![](https://img-blog.csdnimg.cn/20190919172619351.jpg?x-oss-process=image/resize,m_fixed,h_224,w_224)
图像处理
南洲.
写以致用,学以致深
展开
-
利用python或C++读取指定文件夹下的所有图片视频等
1.python读取指定文件夹下的所有图片路径和图片文件名import cv2import osdef get_fileNames(rootdir): data=[] prefix = [] for root, dirs, files in walk(rootdir, topdown=True): for name in files: ...原创 2019-07-11 09:08:07 · 989 阅读 · 0 评论 -
火灾(火焰)数据集链接
火灾视频数据集链接:https://github.com/steffensbola/furg-fire-dataset火灾图片数据集链接:https://collections.durham.ac.uk/files/r2d217qp536#.XW9UE_y-vCI原创 2019-09-04 14:26:52 · 24612 阅读 · 5 评论 -
多线程读取+多进程保存多路摄像头图像
项目需要对多路在线视频采集数据保存,利用自己之前的两篇博客:(1)利用python多进程程或多线程实时读取远程IP摄像头视频(2)Pyhon cv2.VideoWriter 保存视频整合成如下代码,可以对多路网络摄像头图像实时采集并分别保存视频。或者自己改写代码,直接保存每路的实时图像也可以。from threading import Threadfrom collections imp...原创 2020-04-02 12:08:55 · 4762 阅读 · 12 评论 -
海康SDK开发实时读取摄像头图像
1、概述 最近项目需要实时读取网络摄像头,并对图像做处理,参考网络资料和海康SDK开发文档,文档中给了两种方式(1)SDK直接解码显示(2)实时流数据回调,用户自行处理码流数据(开发文档上以软解显示为例),自己分别在Windows做了两种方式的时延测试,第一种方式测试时延约为200ms,第二种测试时延较大,达到了秒...原创 2020-03-14 17:55:12 · 8358 阅读 · 7 评论 -
像素坐标转到世界坐标时相机坐标系中的Zc值求解
世界坐标系、相机坐标系、图像坐标系、像素坐标系之间的转换公式参考:世界坐标系、相机坐标系、图像坐标系、像素坐标系之间的转换 其中图像坐标到世界坐标的转化公式作者讲解的也比较清楚,但是对于Zc的值,作者并没有给出进一步讲解 ...原创 2020-01-07 16:47:37 · 18808 阅读 · 95 评论 -
aruco码C++检测和位姿估计代码
// aruco_code_detect.cpp : 此文件包含 "main" 函数。程序执行将在此处开始并结束。//#include "pch.h"#include <iostream> #include <opencv2/core/core.hpp> #include<opencv2/highgui/highgui.hpp> #inclu...原创 2019-11-26 18:25:24 · 7342 阅读 · 9 评论 -
生成aruco码方法
利用C++生成aruco码,代码如下:#include "pch.h"#include <iostream> #include <opencv2/core/core.hpp> #include<opencv2/highgui/highgui.hpp> #include <...原创 2019-11-26 18:18:41 · 9274 阅读 · 15 评论 -
python画出最小外接矩形及其中心点
本文主要对opencv给出画出的最小外接矩形及其中心点的方法,用于可视化查找的目标块位置,便于调试,实际中查找到最小外接矩形后,会对轮廓筛选,参见我另一片博客:Python图片查找轮廓、多边形拟合、最小外接矩形操作实例,此外本文参考了博客OpenCv-Python 最小外接圆、最小外接矩形、椭圆拟合、直线拟合im...原创 2019-11-20 11:30:10 · 5882 阅读 · 0 评论 -
python四行代码进行OCR字符识别
对OCR字符识别进行初步研究,发现Google有OCR的识别库,于是尝试测试一下。 OCR,即Optical Character Recognition,光学字符识别,是指通过扫描字符,然后通过其形状将其翻译成电子文本的过程,对应图形验证码来说,它们都是一...原创 2019-10-28 22:10:45 · 993 阅读 · 0 评论 -
火灾检测方法总结
最近在研究火灾检测,网上看了一些论文和代码,总结如下:初级版检测:主要就是通过颜色提取检测火灾,对于火焰而言,红色分量®和绿色分量(G)会很大,并且绿色分量(G)会大于蓝色分量(B)。其中,Rt是红色分量阈值,St是饱和度阈值,火焰像素主要取决于红色分量®的色度和饱和度。其中,Rt是红色分量阈值,St是饱和度阈值,具体值是自己设置的。------利用颜色检测的python版的火灾检测:h...原创 2019-08-27 11:19:10 · 12538 阅读 · 17 评论 -
利用python多进程程或多线程的方式获取数据
两种方法均在自己电脑上测试(前提是要编译安装opencv),均可以通过代码如下:1.python多进程实时读取摄像头视频from multiprocessing import Queue, Processimport cv2import datetime##################################################摄像头地址url = 'rtsp...原创 2019-07-15 11:35:52 · 6040 阅读 · 10 评论 -
帧差法得到运动背景图像
本文以火灾视频为例,得到运行(变化)部分图像。import cv2 as cvimport scipy.ndimagedef medium_filter(im, x, y, step): sum_s = [] for k in range(-int(step / 2), int(step / 2) + 1): for m in range(-int(step...原创 2019-08-13 11:09:22 · 1763 阅读 · 1 评论 -
C++ 霍夫变换直线检测代码示例
利用霍夫变换进行直线检测,代码经过亲自测试,示例代码如下:img = imread("test.jpg")Mat gray, canny;cvtColor(img, gray, CV_RGB2GRAY);Canny(gray, canny, 50, 120);vector<Vec4i> lines;HoughLinesP(canny, lines, 1, CV_PI / ...原创 2019-08-05 23:53:39 · 2865 阅读 · 0 评论 -
C++ LSD直线检测代码示例
利用LSD进行直线检测,代码经过亲自测试,示例代码如下:img = imread("test.jpg")Mat gray;cvtColor(img, gray, CV_BGR2GRAY);//建立直线检测Ptr<LineSegmentDetector> lsd = createLineSegmentDetector();vector<Vec4f> lines_...原创 2019-08-05 23:50:27 · 2601 阅读 · 4 评论 -
Python图片查找轮廓、多边形拟合、最小外接矩形操作实例
概述经常用到轮廓查找和多边形拟合等opencv操作,因此记录以备后续使用。本文代码中的阈值条件对图片没有实际意义,仅仅是为了测试。原图为:测试代码:import cv2import numpy as npimg = cv2.imread('/home/yasin/coffe.jpg')img_gray = cv2.cvtColor(img, cv2.COLOR_BGR2GRAY)...原创 2019-07-29 12:11:32 · 7869 阅读 · 0 评论 -
Python在图片上绘制指定半径的圆
在调试时,有时需要验证检测位置是否正确,将检测的目标中心画在图片上更直观,因此记录。import cv2from skimage import drawimg = cv2.imread('cat.jpg')height = img.shape[0]width = img.shape[1]rr,cc = draw.circle(int(height/2), int(width/2) ,5...原创 2019-07-16 14:24:01 · 7534 阅读 · 1 评论 -
Pyhon cv2.VideoWriter 保存视频
本文代码主要是在对视频处理后(例如在图片上显示检测结果、添加某些文字等),想按原尺寸、帧率保存视频;也可以对批量处理后的图片进行自定义帧率的视频保存,方便查看结果。import cv2# open your target videovideo = cv2.VideoCapture('/home/yasin/test_video.avi')print("Loaded video ...")...原创 2019-07-18 10:02:45 · 11038 阅读 · 9 评论 -
ffmpeg截取指定视频中的一段视频
ffmpeg截取视频中的一段视频命令为:ffmpeg -i test.avi -vcodec copy -acodec copy -ss 00:00:10 -to 00:00:50 test_cut.mp4 -y上述命令会得到一个长为40秒的视频 test_cut.mp4其中:-i 表示源视频文件-y 表示输出文件,如果已存在则覆盖-ss 表示从哪个时间点开始截取-to 表示从哪个...原创 2019-07-15 16:42:18 · 4399 阅读 · 0 评论 -
对图像进行增强操作(旋转,缩放,剪切,平移,加噪声)
对图片进行旋转,缩放,剪切,平移,夹噪声等操作,对图片进行增强。可批量操作,参见我另一篇博客:https://mp.csdn.net/mdeditor/95445913#原图为:import cv2import numpy as npimport randomdef rotate(img, angle): # 对图片执行旋转操作 imgInfo = img.shape ...原创 2019-07-11 11:38:48 · 2804 阅读 · 0 评论 -
python opencv提取指定颜色区域及图像腐蚀、膨胀简单介绍
以提取红色区域为例,红色有两个区域范围,参考博客:https://blog.csdn.net/u013270326/article/details/80704754原图为:import cv2img = cv2.imread('/home/yasin/book.png')# range of redlower_red = np.array([160, 60, 60])upper_...原创 2019-07-11 10:46:03 · 12580 阅读 · 0 评论 -
python 将小图放入较大的白色或黑色背景图片
将图片放入到白色或黑色背景图中,前提时图片小于背景图片的尺寸。原图为如下,长为1.将图片放入到原创 2019-07-11 10:24:26 · 6213 阅读 · 1 评论 -
python 等比例缩放图片
在对图片缩放时,可能会使得图片产生变形,以下代码按照比例缩放图片,保持长宽比。例如原图为:如果resize成(224,224)则图片变为import cv2def process_image(img, min_side): size = img.shape h, w = size[0], size[1] #长边缩放为min_side scale = m...原创 2019-07-11 09:53:27 · 13459 阅读 · 0 评论 -
Python对图片进行滑动窗提取局部区域
对一张图片滑动窗提取,分别在x方向和y方向滑动,依次获取指定滑动窗大小的局部区域图片。import cv2def sliding_window(image, stepSize, windowSize): # slide a window across the image for y in range(0, image.shape[0], stepSize): ...原创 2019-07-15 14:43:01 · 8906 阅读 · 24 评论 -
C++ opencv图片横向拼接(无融合)
对多个图片进行横向直接拼接,利用opencv函数实现,为了方便,测试使用的是同一个图片拼接。单个图片为: &n...原创 2019-08-28 19:02:07 · 6571 阅读 · 2 评论 -
SIFT特征匹配详细原理
1. SIFT(尺度不变特征变换) SIFT,即尺度不变特征变换(Scale-invariant feature transform,SIFT),是用于图像处理领域的一种描述。这种描述具有尺度不变性,它对物体的尺度变化,刚体变换,光照强度和遮挡都具有较好的稳定性,可在图像中检测出关键点,是一种局部特征描述子。SIFT 算法被认...转载 2019-09-10 22:10:13 · 13107 阅读 · 0 评论 -
Canny边缘检测算法
最近看的一篇详细的Canny边缘检测算法代码,作者写的比较清楚,转载以记录。链接为:https://www.cnblogs.com/techyan1990/p/7291771.html还有另一篇也可学习:https://blog.csdn.net/likezhaobin/article/details/6892176...转载 2019-09-09 23:37:46 · 2551 阅读 · 0 评论 -
6目摄像头照片球面投影变换拼接全景图片
最近在做全景拼接项目,有有六张来源自于六目摄像头的图片,分别来自不同方向上的图片,示意图如下: ________ | | | top | | | _______|________|______________...转载 2019-09-27 10:19:18 · 2183 阅读 · 3 评论 -
利用GRB颜色模型过滤条件进行火灾检测
火灾检测的相关介绍参考我另一篇博客:https://blog.csdn.net/zhou4411781/article/details/100095274本文参考论文:Fire detection using statistical color model in video sequences,提取效果比一般的RGB颜色过滤提取效果好些,我进行了测试,提取的区域更加饱和,代码参考博客:https...原创 2019-09-17 10:18:46 · 2067 阅读 · 1 评论