阿菊的OpenCv
OpenCv的版本好像是个坑啊,小伙伴们在学习的时候注意了...
fuhao7i
我还很年轻,吃苦趁现在!
展开
-
阿菊的OpenCv11——cv2读取图像并用matplotlib(plt)显示多幅图像以及RGB图像通道的拆分(cv2.split)与合并(cv2.merge)
阿菊的OpenCv11——cv2读取图像并用matplotlib显示多幅图像以及RGB图像通道的拆分cv2.split与合并cv2.merge0. 原始图像1. cv2读取图像并用matplotlib显示2.RGB图像通道的拆分与合并3. matplotlib 显示多幅图像0. 原始图像1. cv2读取图像并用matplotlib显示import cv2import matplotlib.pyplot as pltimg = cv2.imread('../images/ju.jpg')pl原创 2020-12-15 16:21:08 · 6498 阅读 · 14 评论 -
阿菊的OpenCv10——使用快速Hessian算法和SURF来提取和检测特征
阿菊的OpenCv——使用快速Hessian算法和SURF来提取和检测特征SURF采用快速Hessian算法检测关键点,而SURF来踢去特征,这和SIFT很像。阿菊的OpenCv(九)——使用DoG和SIFT进行特征提取与描述代码如下:import cv2import numpy as npimg = cv2.imread('1.jpg')gray = cv2.cvtColor(img, cv2.COLOR_BGR2GRAY)sift = cv2.xfeatures2d.SURF_crea原创 2020-12-14 18:36:47 · 643 阅读 · 1 评论 -
阿菊的OpenCv9——使用DoG和SIFT进行特征提取与描述
阿菊的OpenCv——使用DoG和SIFT进行特征提取与描述关于使用Harris算法来对图像进行角点检测的介绍,大家可以参考我的另一个博客:阿菊的OpenCv(八)——cv2.cornerHarris()函数详解 用于角点检测前面我们已经了解了Harris函数来进行角点检测,因为角点的特性,这些角点在图像旋转的时候也可以被检测到。但是,如果我们放大或缩小图像时,就可能会丢失图像的某些部分,甚至有可能增加角点的质量。这种损失的现象需要一种与图像比例无关的角点检测方法来解决。SIFT(Scale-Inva原创 2020-12-14 16:42:34 · 521 阅读 · 0 评论 -
阿菊的OpenCv8——cv2.cornerHarris()函数详解 用于角点检测
阿菊的OpenCv——cv2.cornerHarris函数详解 用于角点检测OpenCV 中的 Harris 角点检测python代码如下:参考文献:关于角点的介绍,请参考我的另一篇博客:阿菊的OpenCv(七)——一分钟了解特征检测中的角点(Corner)以及斑点(blob)OpenCV 中的 Harris 角点检测Open 中的函数 cv2.cornerHarris() 可以用来进行角点检测。参数如下: • img - 数据类型为 float32 的输入图像。 • blockSize -原创 2020-12-14 16:30:53 · 7020 阅读 · 4 评论 -
阿菊的OpenCv7——一分钟了解特征检测中的角点(Corner)以及斑点(blob)
阿菊的OpenCv——一分钟了解特征检测中的角点以及斑点1.角点2. 斑点参考文献:1.角点通常意义上来说,角点就是极值点,即在某方面属性特别突出的点,是在某些属性上强度最大或者最小的孤立点、线段的终点。 对于图像而言,如图所示圆圈内的部分,即为图像的角点,其是物体轮廓线的连接点。以下是关于角点的几种具体描述:一阶导数(即灰度的梯度)的局部最大所对应的像素点;两条及两条以上边缘的交点;图像中梯度值和梯度方向的变化速率都很高的点;角点处的一阶导数最大,二阶导数为零,指示物体边缘变化不连续的方原创 2020-12-14 14:43:36 · 2166 阅读 · 1 评论 -
阿菊的OpenCv6——特征检测算法与匹配算法汇总详解!
阿菊的OpenCv——特征检测算法与匹配算法汇总详解!1. 特征检测算法a. 用于检测角点的特征检测算法a1 Harrisa2 FASTb. 用于检测斑点的特征检测算法b1 SIFTb2 SURFb3 BRIEFc. ORB:该算法代表带方向的FAST算法与具有旋转不变性的BRIEF算法2. 特征匹配算法a. 暴力(Brute-Force)匹配法b. 基于FLANNel的匹配法OpenCv可以检测图像的主要特征,然后提取这些特征,使其成为图像描述符,并可以利用这些特征进行图像匹配和搜索。1. 特征检测原创 2020-12-14 19:02:41 · 614 阅读 · 2 评论 -
阿菊的OpenCv5——error: (-215:Assertion failed) !_descriptors.empty() in function ‘add‘问题解决
阿菊的OpenCv——error: -215:Assertion failed !_descriptors.empty in function 'add'问题解决解决方案:出现这个问题一般是OpenCv读取图片错误。造成的原因是图片的路径没写对,如果没有找出自己路径错误的话你可以写绝对路径试一试。vscode使用在终端中运行python文件时,一定要注意!!!要在终端中进入目标文件夹,要不然就容易造成图片路径不对,哭了555...原创 2020-12-10 17:36:25 · 1483 阅读 · 1 评论 -
阿菊的OpenCv4——轮廓检测函数cv2.findContours详解
阿菊的OpenCv——一分钟学会cv2.findContours函数函数参数:返回值e.g.image, contours, hierarchy = cv2.findContours(thresh, cv2.RETR_TREE, cv2.CHAIN_APPROX_SIMPLE)提取二值化图像的轮廓信息。函数参数:thresh:输入图像cv2.RETR_TREE:层次类型cv2.CHAIN_APPROX_SIMPLE:轮廓逼近方法返回值image:修改后的图像contours:图像原创 2020-12-10 13:56:41 · 2472 阅读 · 2 评论 -
阿菊的OpenCv3——图像阀值处理(二值化)cv2.threshold()函数详解
阿菊的OpenCv——一分钟学会cv2.threshold函数函数参数:返回值e.g.ret, thresh = cv2.threshold(img, 127, 255, 0)这是一个简单的阀值函数,设定一个全局阀值,然后将图像分成非黑即白的二值图像。函数参数:img:原图像127:进行分类的阀值255:当像素高于(低于)阀值时赋予一个新值155方法参数常见的有:• cv2.THRESH_BINARY(黑白二值)• cv2.THRESH_BINARY_INV(黑白二值反转)• cv原创 2020-12-10 13:49:35 · 995 阅读 · 0 评论 -
阿菊的OpenCv2——Mac上调用摄像头设备读取视频帧并用imshow()显示
阿菊的OpenCv——Mac上调用摄像头设备读取视频帧并用imshow显示问题:没有访问摄像头的权限解决方案:使用终端或者iTerm问题:没有访问摄像头的权限在Mac上对App的权限控制比较严格,我们要想使用OpenCv来访问摄像头设备,就必须在Mac上获得访问摄像头的权限。如图:解决方案:使用终端或者iTerm这里我们不用纠结为什么PyCharm或者Vscode不能打开,而使用终端或者iTerm却可以。这里不是Mac OS的问题,而是PyCharm在这一方面不完善,在Mac上不能添加PyChar原创 2020-12-08 17:22:05 · 2050 阅读 · 1 评论 -
阿菊的OpenCv1——imshow()无法弹出窗口,imshow()弹出窗口无法显示图片且一直显示未响应...盘点自己一路的辛酸历程!
阿菊的OpenCv——imshow无法弹出窗口,imshow弹出窗口无法显示图片且一直显示未响应...盘点自己一路的辛酸历程!问题: imshow()窗口无法弹出,并且一直显示未响应状态...解决: 利用Anaconda一步步规规矩矩重新安装OpenCv库1. 安装numpy2. 安装scipy3. 安装matplotlib4. 安装OpenCv==3.4.2版本问题: imshow()窗口无法弹出,并且一直显示未响应状态…这个问题折磨了我好久好久,网上各种“大神”提示imshow()函数要与wait原创 2020-12-08 16:46:48 · 5476 阅读 · 14 评论