OPENCV-python
文章平均质量分 77
已实战为主哎学习opencv
ouliangliang1
这个作者很懒,什么都没留下…
展开
专栏收录文章
- 默认排序
- 最新发布
- 最早发布
- 最多阅读
- 最少阅读
-
OPENCV面试题
1.opencv中RGB2GRAY是怎么实现的答:以R、G、B为轴建立空间直角坐标系,则RGB图的每个象素的颜色可以用该三维空间的一个点来表示,而Gray图的每个象素的颜色可以用直线R=G=B上的一个点来表示。于是rgb转gray图的本质就是寻找一个三维空间到一维空间的映射,最容易想到的就是射影(即过rgb空间的一个点向直线R=G=B做垂线),事实上Matlab也是这样做的,输出的灰度图像是RGB三种颜色通道的加权和;Gray = 0.29900 * R + 0.58700 * G + 0.11400原创 2020-08-13 23:27:57 · 13476 阅读 · 1 评论 -
cv2.dnn.blobFromImage函数
深度学习中OpnenCV的blobFromImage是对输入图像做了什么呢?在PyImageSearch有许多读者好奇,blobFromImage到底是对图像做了了什么样的处理 ?今天我就来告诉大家。你也必定明白,为了从深度神经网络获得预测结果,你首先需要对你的数据进行预处理。在深度学习和图像分类领域,预处理任务通常包含:1.减均值(Mean subtraction)2.按比例缩放(Scaling by some factor)OpenCV新的神经网络模块dnn包含两个预处理函数,为通过预训练原创 2020-08-02 20:32:13 · 2596 阅读 · 0 评论 -
目标跟踪-KCF目标跟踪方法
opencv已经实现了的追踪算法OPENCV_OBJECT_TRACKERS = { "csrt": cv2.TrackerCSRT_create, "kcf": cv2.TrackerKCF_create,#目标追踪较为重要的论文 "boosting": cv2.TrackerBoosting_create, "mil": cv2.TrackerMIL_create, "tld": cv2.TrackerTLD_create, "medianflow": cv2.TrackerMedianF原创 2020-08-01 23:48:32 · 2038 阅读 · 0 评论 -
surf和sift算法被申请专利后部分opencv版本无法使用后的安装pycharm+opencv使用surf和sift算法教程
surf和sift算法被申请专利后部分opencv版本无法使用后的安装pycharm+opencv使用surf和sift算法教程https://blog.youkuaiyun.com/qq_41840148/article/details/101611176转载 2020-08-01 22:32:15 · 998 阅读 · 1 评论 -
背景建模与光流估计
背景建模帧差法由于场景中的目标在运动,目标的影像在不同图像帧中的位置不同。该类算法对时间上连续的两帧图像进行差分运算,不同帧对应的像素点相减,判断灰度差的绝对值,当绝对值超过一定阈值时,即可判断为运动目标,从而实现目标的检测功能。帧差法非常简单,但是会引入噪音和空洞问题混合高斯模型在进行前景检测前,先对背景进行训练,对图像中每个背景采用一个混合高斯模型进行模拟,每个背景的混合高斯的个数可以自适应。然后在测试阶段,对新来的像素进行GMM匹配,如果该像素值能够匹配其中一个高斯,则认为是背景,否则认为原创 2020-07-16 23:54:09 · 702 阅读 · 0 评论 -
9案例实战-全景图像拼接
9案例实战-全景图像拼接原创 2020-07-14 21:31:58 · 436 阅读 · 1 评论 -
8图像特征-sift和特征匹配
Scale Invariant Feature Transform(SIFT)图像尺度空间在一定的范围内,无论物体是大还是小,人眼都可以分辨出来,然而计算机要有相同的能力却很难,所以要让机器能够对物体在不同尺度下有一个统一的认知,就需要考虑图像在不同的尺度下都存在的特点。尺度空间的获取通常使用高斯模糊来实现不同σ的高斯函数决定了对图像的平滑程度,越大的σ值对应的图像越模糊。高斯差分金字塔(DOG)高斯差分金字塔(DOG)DoG空间极值检测为了寻找尺度空间的极值点,每个像素点要和其原创 2020-07-13 22:49:03 · 376 阅读 · 0 评论 -
7图像特征-harris角点检测
图像特征-harris角点检测基本原理角点x、y都剧烈变化I(u,v)是原来的灰度值 W(u,v):不同位置点权重,中心的权重较大代表BR接近于0为平坦区 R小于零边界 R式后面部分参数一般选较小 R大于0则为角点最后加上极大值抑制来选取cv2.cornerHarris()img: 数据类型为 float32 的入图像blockSize: 角点检测中指定区域的大小ksize: Sobel求导中使用的窗口大小k: 取值参数为 [0,04,0.06原创 2020-07-11 20:41:01 · 203 阅读 · 0 评论 -
6项目实战-文档扫描OCR识别
scan.py# 导入工具包import numpy as npimport argparseimport cv2# 设置参数ap = argparse.ArgumentParser()ap.add_argument("-i", "--image", required = True, help = "Path to the image to be scanned") args = vars(ap.parse_args())def order_points(pts): # 一共4个坐原创 2020-07-11 16:34:24 · 577 阅读 · 1 评论 -
5项目实战-信用卡数字识别
信用卡照片数字匹配照片myutils.pyimport cv2def sort_contours(cnts, method="left-to-right"): reverse = False i = 0 if method == "right-to-left" or method == "bottom-to-top": reverse = True if method == "top-to-bottom" or method == "bott原创 2020-07-09 22:30:44 · 519 阅读 · 0 评论 -
4图像处理-直方图和傅里叶变换
直方图(统计像素点个数)cv2.calcHist(images,channels,mask,histSize,ranges)images: 原图像图像格式为 uint8 或 float32。当传入函数时应 用中括号 [] 括来例如[img]channels: 同样用中括号括来它会告函数我们统幅图 像的直方图。如果入图像是灰度图它的值就是 [0]如果是彩色图像 的传入的参数可以是 [0][1][2] 它们分别对应着 BGR。mask: 掩模图像。统整幅图像的直方图就把它为 None。但是如 果你想统原创 2020-07-07 23:28:18 · 672 阅读 · 0 评论 -
3图像处理-图像金字塔、轮廓检测
图像金字塔高斯金字塔拉普拉斯金字塔高斯金字塔:向下采样方法(缩小)从下往上 相当于卷积高斯金字塔:向上采样方法(放大)注意:放大和缩小都会带来部分信息丢失img=cv2.imread("AM.png")cv_show(img,'img')print (img.shape)#(442, 340, 3) 输入图片up=cv2.pyrUp(img)#pyramid 金字塔 放大cv_show(up,'up')print (up.shape)#(884, 680, 3)down原创 2020-07-07 22:35:33 · 434 阅读 · 0 评论 -
2图像处理--阈值与平滑处理、图像形态学处理、图像梯度处理、边缘检测
阈值与平滑处理HSV: hsv=cv2.cvtColor(img,cv2.COLOR_BGR2HSV)H - 色调(主波长)。S - 饱和度(纯度/颜色的阴影)。V值(强度)图像阈值ret, dst = cv2.threshold(src, thresh, maxval, type)src: 输入图,只能输入单通道图像,通常来说为灰度图dst: 输出图thresh: 阈值maxval: 当像素值超过了阈值(或者小于阈值,根据type来决定),所赋予的值type:二值化操作的类型,包含原创 2020-07-07 10:13:47 · 985 阅读 · 0 评论 -
1 图像基本操作
#环境为anaconda3+pyhton3.6+cv2+pycharm数据读取-图像:cv2.IMREAD_COLOR:彩色图像cv2.IMREAD_GRAYSCALE:灰度图像import cv2 #opencv读取的格式是BGR 正常为RGBimport matplotlib.pyplot as pltimport numpy as np %matplotlib inline#图像的显示,也可以创建多个窗口def cv_show(name,img):#图像显示函数 cv2.原创 2020-07-06 09:34:45 · 860 阅读 · 0 评论
分享