
OpenCV
这个专栏记录OpenCV的C++实现和Python实现
量子象限
90后嵌入式工程师,喜欢写作、读书。希望通过文字和大家共同进步!
展开
-
OpenCV-Python之图像梯度
Sobel算子对应一阶导数Laplace算子对应二阶导数Sobel算子(Schar)import cv2 as cvdef sobel_demo(image): grad_x = cv.Sobel(image, cv.CV_32F, 1, 0) # 使用CV_32F防止数据溢出 grad_y = cv.Sobel(image, cv.CV_32F, 0, 1) ...原创 2018-12-16 17:16:23 · 1016 阅读 · 0 评论 -
Canny边缘检测(Python实现)
Canny算法步骤①高斯模糊 - GaussianBlur②灰度转换 - cvtColor③计算梯度 – Sobel/Scharr④非最大信号抑制⑤高低阈值输出二值图像——高低阈值比值为2:1或3:1最佳代码演示# Canny算子def Canny_demo(image): blur = cv.GaussianBlur(image, (3, 3), 0) gray ...原创 2018-12-18 20:18:32 · 3618 阅读 · 0 评论 -
OpenCV-Python之图像金字塔
图像金字塔化:先进行图像平滑,再进行降采样,根据降采样率,得到一系列尺寸逐渐减小的图像。操作:操作:n次(高斯卷积->2倍降采样)->n层金字塔目的:捕捉不同尺寸的物体直接降采样会损失信息,所以在降采样之前要进行高斯滤波def pyramid_demo(img): level = 3 temp = img.copy() pyramid_image = ...原创 2018-12-14 18:24:08 · 323 阅读 · 0 评论 -
OpenCV-Python之图像阈值化
TensorFlow算法一般流程导入/生成样本数据集转换和归一化数据data = tf.batch_norm_with_global_normalization(...)划分样本数据集为训练样本集、测试样本集和验证样本集(决定最优的超参数)...原创 2018-11-25 17:37:46 · 413 阅读 · 0 评论 -
OpenCV-Python之模板匹配
import cv2 as cvimport numpy as npdef template_demo():template = cv.imread(’./data/football.png’, 1)target = cv.imread(’./data/messi5.jpg’, 1)cv.imshow(‘template image’, template)cv.imshow(‘tar...原创 2018-11-20 22:39:24 · 789 阅读 · 0 评论 -
OpenCV-Python之图像直方图的反向投影
这个技术常常用来跟踪目标,且需要转换在HSV色彩空间原创 2018-11-19 20:30:16 · 374 阅读 · 0 评论 -
OpenCV-Python之图像直方图的应用
1.直方图均匀化# 全局#直方图的应用 直方图均衡化(即调整图像的对比度) 直方图即统计各像素点的频次def eaualHist_demo(image): gray = cv.cvtColor(image, cv.COLOR_RGB2GRAY) # opencv的直方图均衡化要基于单通道灰度图像 dst = cv.equalizeHist(gray) # 自动调...原创 2018-11-10 10:58:49 · 560 阅读 · 0 评论 -
OpenCV-Python之图像直方图的绘制
方法一:利用matplotlibimport numpy as npimport cv2 as cvfrom matplotlib import pyplot as pltdef histogram_demo(image): plt.hist(image.ravel(), 256, [0, 256]) plt.show()image = cv.imread('./...原创 2018-11-10 09:49:17 · 10710 阅读 · 1 评论 -
OpenCV-Python之边缘保留滤波(EPF)
两种常用的方法高斯双边均值迁移高斯双边滤波前文提到的高斯模糊只考虑了像素空间的分布,而没有考虑差异问题。下图十分形象的说明了边缘保留滤波的原理。一张黑白分明存在噪声的图片通过高斯滤波保留边缘将二者区分开来。代码解析# 边缘保留滤波(EPF)# 高斯双边滤波def bilateral_demo(img): dst = cv.bilateralFilter(src=im...原创 2018-11-08 13:49:15 · 2834 阅读 · 0 评论 -
OpenCV-Python之高斯模糊
1.高斯噪声函数//将范围限制在0~255之间def thresholdfn(pv): if pv > 255: pv = 255 elif pv < 0: pv = 0 else: return pv//定义高斯噪声函数def gaussian_demo(image): h, w, c = ima...原创 2018-11-07 19:06:52 · 1407 阅读 · 0 评论 -
OpenCV-Python模糊处理
均值模糊中值模糊自定义模糊均值模糊import cv2 as cvimport numpy as np# 均值模糊def blur_demo(img): dst = cv.blur(img, (5, 5)) cv.imshow("blur image", dst)中值模糊import cv2 as cvimport numpy as np# 中值模糊...原创 2018-11-05 20:06:18 · 531 阅读 · 0 评论 -
OpenCV-Python之ROI和泛洪填充
1.ROI感兴趣区域的操作import cv2 as cvimage = cv.imread('./data/lena.jpg', 1)cv.imshow('source image', image)# 提取感兴趣区域face = image[250:400, 200:350]# 将感兴趣区域转换成灰度图gray = cv.cvtColor(face, cv.COLOR_BGR2GR...原创 2018-11-04 11:55:41 · 2079 阅读 · 0 评论 -
OpenCV-Python之像素运算
1.算术运算:加减乘除应用:调整亮度和对比度import cv2 as cvdef add_img(m1, m2): dst = cv.add(m1, m2) cv.imshow("add image", dst)def subtract_img(m1, m2): dst = cv.subtract(m1, m2) cv.imshow("s原创 2018-10-24 19:33:54 · 1876 阅读 · 0 评论 -
OpenCV-Python之色彩空间
1. 色彩空间转换API常见的色彩空间:RGBHSVYUVYCbCr如下demoimport cv2 as cvdef converce_color_space(img): gray = cv.cvtColor(img, cv.COLOR_BGR2GRAY) cv.imshow('gray iamge', gray) hsv = cv.cvtColor...原创 2018-10-23 13:51:47 · 444 阅读 · 0 评论