肥宅Sean

Never give up~

【opencv】边缘高斯模糊(canny+dilate+GaussianBlur)Python实现

简述 在Cartoon GAN的实现中提到了这种思想。但是在网上没有找到对应的实现,就自己研究了一波。 处理思路 Canny边缘提取 用dilate做膨化,用一个粗颗粒,再用一个细颗粒 粗颗粒的膨化结果用于提取原图像,之后,再做高斯模糊 细颗粒的膨化结果用于定位覆盖掉原图像的结果,将边缘部分贴回...

2019-01-22 23:06:31

阅读数 953

评论数 0

【opencv】边缘提取或通过二值图片提取对应的三维图像(python)

简述 原图 二值图(经过膨化处理) 提取出来的图片 代码实现 import cv2 img = cv2.imread('corgi.jpg') data = (150, 150) imgCanny = cv2.Canny(img, *data) # 创建矩形结构 g = c...

2019-01-22 22:12:07

阅读数 689

评论数 2

摄像头监控视频传输实现(C++)

配置 这里采用的是 VS2017 之前写过一个Python的版本 https://blog.csdn.net/a19990412/article/details/80930725 首先得先下载一下opencv,然后简单配置一下。别担心,这个步骤操作就点击下三下鼠标就好了(但是如果是想换...

2018-09-28 00:36:23

阅读数 4596

评论数 34

动态锁定(每个帧特征捕捉实现)Python

简述 下面中cap的内容选的是0,表示启动摄像头0(如果只有一个摄像头的话,就直接找到对应的那个)。 注释部分,其实是背景提取后的效果,或者是提取之后的再做阈值的处理后的图片 代码 import cv2 cap = cv2.VideoCapture(0) bs = cv2.createB...

2018-07-27 09:01:51

阅读数 537

评论数 0

录取5秒钟的KNN取景效果gif(Opencv) Python实现

简述 录5秒钟 被取景的效果。 效果 代码 import cv2 cap = cv2.VideoCapture(0) fps = 30 size = (int(cap.get(cv2.CAP_PROP_FRAME_WIDTH)), int(cap.get(cv2.CAP_PROP_F...

2018-07-26 20:21:15

阅读数 202

评论数 0

摄像头动态锁定(Python)

简述 运行下面代码,就是先获取一张图,并设置为背景。 之后,再得到的图,就视为一个个帧。 获取的方法,都是先将整体图变成灰色,之后再做一个高斯模糊。(背景也是要做同样的处理) 之后,再求一个差别的绝对值。 再来做一个阈值的变换(这里采用的是大于25,就变成黑色) 之后,再做一个膨化处理...

2018-07-26 14:08:49

阅读数 352

评论数 0

FLANN单应性(python实现)

算法效果图 相比于之前的FLANN,这里还标出了对应的图形。 (大家也可以自己拍一些照片来试试效果) 代码 import cv2 from matplotlib import pyplot as plt import numpy as np MIN_MATCH_COUNT = 10 ...

2018-07-26 08:11:10

阅读数 766

评论数 0

FLANN特征匹配(Python)

输入图片 算法输出图 可以看到,这里的算法效果比之前的ORB算法要好很多了! 可以点击来访问一下,就知道差别了~ ORB特征匹配(python) 代码 import cv2 from matplotlib import pyplot as plt queryImage ...

2018-07-25 22:02:24

阅读数 1563

评论数 7

ORB特征匹配(python)

输入的两个图 输出图片 虽然感觉有点不太准。 代码 import cv2 from matplotlib import pyplot as plt img1 = cv2.imread('6.jpg', cv2.IMREAD_GRAYSCALE) img2 = cv2.im...

2018-07-25 19:11:53

阅读数 1983

评论数 0

SURF角点检测(python)

简述 算是SIFT算法的改进算法。 原图 算法图 代码 import cv2 imgpath = '5.jpg' img = cv2.imread(imgpath) gray = cv2.cvtColor(img, cv2.COLOR_BGR2GRAY) surf = ...

2018-07-25 18:18:21

阅读数 583

评论数 1

【解决方案】module 'cv2.cv2' has no attribute 'xfeatures2d'

问题 在学习opencv的过程中使用了SIFT的时候,发现书上的代码用不了。 在stackoverflow上看了一些之后,找到了解决方案 解决方法 安装好 opencv-contrib-python这个库 可以根据下面的这个博客来安装这个库。 opencv-contrib-python...

2018-07-25 10:11:25

阅读数 10212

评论数 8

(特征检测)检测角点opencv--python

检测角点 检测角点是特征检测的一种方法。 (所谓特征检测,就是检测有意义的东西) 下面代码中,使用cornerHarris来识别角点。 关键代码: dst = cv2.cornerHarris(gray, 2, 23, 0.04) 含义解释: 第一个参数,放的是一张灰色的图片...

2018-07-25 09:57:18

阅读数 998

评论数 0

用GrabCut进行前景检测(对书中代码进行改进)Python

GrabCut 该算法,在opencv中很容易就可以使用。 通过对于一开始取定的矩阵来做来模拟。 (这个我们可以通过调整这个点的以及对应的矩阵大小来调整效果) 下面就是算法提取出来的图像,以及原图 下面这就是原图(就是代码的输入图片) 代码 import cv2 im...

2018-07-24 13:15:20

阅读数 786

评论数 0

图像阈值处理cv2.threshold()函数(python)

内容 cv2.threshold()函数:在opencv中比较常用,但一开始不是很理解是什么意思。 下面是官方文档中给的解释 Python: cv2.threshold(src, thresh, maxval, type[, dst]) → retval, dst 在其中: s...

2018-07-23 18:26:48

阅读数 6589

评论数 0

opencv-Canny边缘检测(Python)

Canny边缘检测 在Opencv中却使用起来非常方便。 在学习完书本上的内容之后做的笔记,目前还没有开始看算法: 高斯滤波器对图像进行区在 计算梯度 在边缘上使用非最大抑制(NMS) 在检测到的边缘上使用双阈值去除假阳性 分析所用的边缘以及其之间的连接 效果 原图: 算法效果...

2018-07-20 19:35:56

阅读数 1956

评论数 0

高滤波器opencv(Python)

高滤波器(HPF) 检测图像的某个区域,然后根据像素与周围像素的亮度差来提升该像素的亮度的滤波器。 数值上,一般为一个核(也是一个矩阵) 效果 原图: 经过一个核来进行滤波之后,结果是 先找到原图像的高斯噪声(之后作差): 其实可以看出来,高斯招生的那个效果会更好一点...

2018-07-18 20:34:34

阅读数 230

评论数 0

opencv将整个图片BGR通道的某个通道进行修改

简述 将整个图变绿。。。 代码 import cv2 img = cv2.imread('Desktop.jpg') img[:, :, 1] = 255 cv2.imshow('s', img) while cv2.waitKey(1) != ord('q'): continue

2018-07-07 16:02:52

阅读数 555

评论数 0

img.item()跟img[x,y]

简述 首先,cv2.imread()读取的图片默认情况下为彩图(三管道图片) 所以,在定位到对应(x,y)(x,y)(x, y)像素点上的时候,得到的就是三维向量 如下代码 代码 import cv2 img = cv2.imread('Desktop.jpg') for i in ...

2018-07-07 15:54:23

阅读数 1020

评论数 0

opencv imencode跟imdecode函数jpg(python)

经典用法 _, img_encode = cv2.imencode('.jpg', img, img_param) img是一张图片文件(在opencv中就是一个numpy的多维矩阵而已) img_param是压缩参数。这个是我们自己设置的。 img_param = [int(cv2.I...

2018-07-06 14:21:07

阅读数 1538

评论数 0

opencv生成随机图(随机彩图,随机灰图)

简述 当管道数为3的时候就是彩图了 默认为1的时候就是灰图 代码 import cv2 import numpy import os randomByteArray = bytearray(os.urandom(120000)) flatNumpyArray = numpy.arra...

2018-07-05 22:51:14

阅读数 661

评论数 0

提示
确定要删除当前文章?
取消 删除