
图像处理
鱼公主
这个作者很懒,什么都没留下…
展开
-
畸变图像的校正
本文主要由两部分构成:畸变类型校正算法一、畸变类型1.径向畸变径向畸变是指给定图像点从它的理想位置向内向外的移动,它主要是由镜头表面部分在径向曲率的变化存在缺陷造成的。图像点的正向的畸变称为枕型畸变,它会造成外侧的点相对扩散和成像比例增加。图像点的负向的径向位移是所谓的桶形畸变,它将造成居于外侧的边沿点更拥挤,成像比例减少。2偏心畸变偏心畸变主要是由光学系统光心与几何中心不一...原创 2020-04-15 11:23:06 · 7987 阅读 · 0 评论 -
摄像机成像模型
本文主要涉及以下知识点:1.图像坐标系和图像物理坐标系的建立2.摄像机坐标系与世界坐标系的建立3.摄像机成像模型三维计算机视觉系统应能从摄像机获得的图像信息出发,计算三维环境的位置、形状等几何信息,并由此识别环境中的物体图像上每一点的亮度反映了空间物体表面某点反射光的强度,而该点在图像上的位置则与空间物体表面相应点的几何位置有关。这些位置的相应关系,由摄像机成像几何模型所决定,该几何模型的...原创 2020-04-14 22:06:53 · 1954 阅读 · 0 评论 -
相机校准
学习内容:由相机引起的失真类型,如何找到相机的固有和非固有特性如何根据这些特性使图像不失真。一些针孔相机会给图像带来明显的失真。两种主要的变形是径向变形和切向变形。 径向变形会导致直线出现弯曲。距图像中心越远,径向畸变越大。例如,下面显示一个图像,其中棋盘的两个边缘用红线标记。但是,您会看到棋盘的边框不是直线,并且与红线不匹配。所有预期的直线都凸出。径向变形可以表示成如下:xd...原创 2020-04-12 11:19:37 · 3076 阅读 · 0 评论 -
特征匹配 + 单应性查找对象
在本章节中, - 我们将把calib3d模块中的特征匹配和findHomography混合在一起,以在复杂图像中找到已知对象。上节中,我们使用了queryImage,找到了其中的一些特征点,我们使用了另一个trainImage,也找到了该图像中的特征,并且找到了其中的最佳匹配。简而言之,我们在另一个混乱的图像中找到了对象某些部分的位置。此信息足以在trainImage上准确找到对象。为此,**...原创 2020-04-11 11:59:55 · 449 阅读 · 0 评论 -
图像处理之图像特征匹配
在本章中, - 我们将看到如何将一个图像中的特征与其他图像进行匹配。 - 我们将在OpenCV中使用Brute-Force匹配器和FLANN匹配器一、Brute-Force匹配器它使用第一组中一个特征的描述符,并使用一些距离计算将其与第二组中的所有其他特征匹配。并返回最接近的一个。对于BF匹配器,首先我们必须使用cv.BFMatcher()创建BFMatcher对象。 它需要两个可选参数。第...原创 2020-04-11 11:53:37 · 2991 阅读 · 0 评论 -
图像处理之特征描述与匹配
本节中主要介绍以下两点:BRIEF算法介绍ORB介绍一、BRIEF(二进制的鲁棒独立基本特征)的原理介绍**BRIEF提供了一种直接查找二进制字符串而无需查找描述符的快捷方式。**它需要平滑的图像补丁,并以独特的方式(在纸上展示)选择一组nd(x,y)n_d(x,y)nd(x,y)位置对。然后,在这些位置对上进行一些像素强度比较。例如,令第一位置对为ppp和qqq。如果I(p)<...原创 2020-04-11 11:42:21 · 568 阅读 · 0 评论 -
用于角点检测的FAST算法
使用FAST进行特征检测1.选择图像中是否要识别为兴趣点的像素ppp,使其强度为IpI_pIp2.选择适当的阈值ttt3.考虑被测像素周围有16个像素的圆圈。(见下图)4.现在,如果圆中存在一组(共16个像素)nnn个连续的像素,它们均比Ip+tI_p + tIp+t亮,或者比Ip−tI_p-tIp−t都暗,则像素ppp是一个角。(在上图中显示为白色虚线)。n被选为12。5.建议...原创 2020-04-11 10:37:29 · 468 阅读 · 0 评论 -
python-opencv图像处理之SURF函数
在SIFT中,Lowe用高斯差近似高斯的拉普拉斯算子来寻找尺度空间。SURF走得更远,使用Box Filter近似LoG。下图显示了这种近似值的演示。这种近似的一大优点是,借助积分图像可以轻松地计算出带盒滤波器的卷积。并且可以针对不同规模并行执行。SURF还依赖于Hessian矩阵的行列式来确定尺度和位置。对于方向分配,SURF在水平和垂直方向上对大小为6s的邻域使用小波响应。适当的高斯权重也...原创 2020-04-11 10:05:00 · 7090 阅读 · 4 评论 -
python-opencv图像处理之SIFT尺度不变特征变换
在这一章当中,我们将学习SIFT算法的概念,找到SIFT关键点和描述算符。一、概念在前面,我们看到了一些像Harris这样的拐角检测器。它们是旋转不变的,这意味着即使图像旋转了,我们也可以找到相同的角。很明显,因为转角在旋转的图像中也仍然是转角。但是缩放呢?如果缩放图像,则拐角可能不是角。例如,检查下面的简单图像。在同一窗口中放大小窗口中小图像中的拐角时,该角是平坦的。因此,Harris拐角不...原创 2020-04-10 22:20:25 · 638 阅读 · 1 评论 -
python-opencv图像处理之用于跟踪的Shi-Tomasi拐角探测器
OpenCV有一个函数cv.goodFeaturesToTrack()。它通过Shi-Tomasi方法(或哈里斯角检测,如果指定)找到图像中的N个最强角。像往常一样,图像应该是灰度图像。然后,指定要查找的角数。然后,您指定质量级别,该值是介于0-1之间的值,该值表示每个角落都被拒绝的最低拐角质量。然后,我们提供检测到的角之间的最小欧式距离。 利用所有这些信息,该功能可以找到图像中的拐角。低于平均...原创 2020-04-10 22:00:35 · 286 阅读 · 0 评论 -
python-opencv图像处理之哈里斯角检测
理解什么是特征,为什么拐角重要等等我们将了解"Harris Corner Detection”背后的概念。我们将看到以下函数:cv.cornerHarris(),cv.cornerSubPix()1.我们不妨先看一下下面这张图片: 图像非常简单。在图像的顶部,给出了六个小图像块。你的问题是在原始图像中找到这些补丁的确切位置。你可以找到多少正确的结果?A和B是平坦的表面,它们散布在很...原创 2020-04-10 21:49:32 · 497 阅读 · 0 评论 -
图像处理之轮廓属性
学习提取一些常用的物体属性,如坚实度,等效直径,掩模图像,平均强度等。(注:质心、面积、周长等也属于这一类,但我们在上一章已经见过)1. 长宽比它是对象边界矩形的宽度与高度的比值。Aspect Ratio=WidthHeight Aspect \; Ratio = \frac{Width}{Height} AspectRatio=HeightWidthx,y,w,h = cv.bou...原创 2020-04-10 15:05:53 · 464 阅读 · 0 评论 -
图像处理之轮廓属性
主要是提取一些常用的物体属性,如坚实度,等效直径,掩模图像,平均强度等。(注:质心、面积、周长等也属于这一类,但我们在上一章已经见过)1. 长宽比它是对象边界矩形的宽度与高度的比值。$$ Aspect \; Ratio = \frac{Width}{Height} $$x,y,w,h = cv.boundingRect(cnt)aspect_ratio = float...原创 2020-04-10 14:57:07 · 221 阅读 · 0 评论 -
图像处理之轮廓特征
如何找到轮廓的不同特征,例如面积,周长,质心,边界框等。您将看到大量与轮廓有关的功能。1. 特征矩特征矩可以帮助您计算一些特征,例如物体的质心,物体的面积等。请查看特征矩上的维基百科页面。==函数cv.moments()提供了所有计算出的矩值的字典。==见下文:import numpy as npimport cv2 as cvimg = cv.imread('star.jpg',...原创 2020-04-10 14:47:37 · 3208 阅读 · 0 评论 -
python图像处理大全
资源详见 :十大图像处理工具SIFT拼接RANSAC算法拼接全景图片拼接原创 2020-04-08 17:08:52 · 228 阅读 · 0 评论 -
python-OpenCV图像的基本运算
本节主要是进行图像一些基本运算,包括加减乘除,均方差运算,亮度对比度,逻辑运算。import cv2 as cvimport numpy as np#加法运算def add_demo(m1,m2): dst = cv.add(m1,m2) cv.imshow("add_demo",dst) #减法运算def subtract_demo(m1,m2): ds...原创 2020-04-04 11:11:43 · 721 阅读 · 0 评论 -
python-OpenCV之numpy数组操作
1.图片的表示与存储图片以矩阵的形式存在电脑里,需要用到数组操作来完成对图像的处理。np.ones(size) #可以创建任意维度的数组,各个元素值均为12 3 np.zeros(size,dtype) #同上,但各个元素值为0.默认元素类型为浮点数使用示例:img = np.zeros([256, 256, 3], np.uint8) #创建长宽为256的图片,三通道(BG...原创 2020-04-04 10:24:44 · 1636 阅读 · 0 评论 -
图像处理之图像平滑
图像平滑本节主要知识点:使用各种低通滤镜模糊图像将定制的滤镜应用于图像(2D卷积)1.2D卷积(图像过滤)与一维信号一样,还可以使用各种低通滤波器(LPF),高通滤波器(HPF)等对图像进行滤波。LPF有助于消除噪声,使图像模糊等。HPF滤波器有助于在图像中找到边缘。OpenCV提供了一个函数cv.filter2D来将内核与图像进行卷积。例如,我们将尝试对图像进行平均滤波。5x5平...原创 2020-04-01 21:43:14 · 1172 阅读 · 0 评论 -
图像的几何变换
本节主要是将不同的几何变换应用到图像上,如平移、旋转、仿射变换等。1.变换OpenCV提供了两个转换函数cv.warpAffine和cv.warpPerspective,您可以使用它们进行各种转换。cv.warpAffine采用2x3转换矩阵,而cv.warpPerspective采用3x3转换矩阵作为输入。2.缩放缩放只是调整图像的大小。为此,OpenCV带有一个函数cv.resize(...原创 2020-03-31 15:47:33 · 647 阅读 · 1 评论 -
Opencv图像处理之改变颜色空间
本节中,你将学习到如何改变图像颜色空间1.如何将图像从一个色彩空间转换到另一个,像BGR--》灰色,BGR--》HSV 等2.创建应用程序,提取视频中的彩色对象1.如何将图像从一个色彩空间转换到另一个,像BGR–》灰色,BGR–》HSV 等2.创建应用程序,提取视频中的彩色对象1.改变颜色空间OpenCV中有超过150种颜色空间转换方法。但是我们将研究只有两个最广泛使用的,BGR↔灰色和...原创 2020-03-31 15:23:27 · 1148 阅读 · 1 评论 -
图像入门二之视频操作
本节中,你将学习到读取视频,显示视频和保存视频。学习从相机捕捉并显示它。1.从相机读取视频通常情况下,我们必须用摄像机捕捉实时画面。提供了一个非常简单的界面。让我们从摄像头捕捉一段视频(我使用的是我笔记本电脑内置的网络摄像头) ,将其转换成灰度视频并显示出来。只是一个简单的任务开始。要捕获视频,你需要创建一个 VideoCapture 对象。它的参数可以是设备索引或视频文件的名称。设备索引...原创 2020-03-30 14:38:38 · 179 阅读 · 0 评论 -
Opencv 图像入门一之基本操作
本节你将学习到如何读取图像,如何显示图像以及如何保存图像1、读取图像使用cv.imread()函数读取图像。图像应该在工作目录或图像的完整路径应给出。第二个参数是一个标志,它指定了读取图像的方式。cv.IMREAD_COLOR: 加载彩色图像。任何图像的透明度都会被忽视。它是默认标志。cv.IMREAD_GRAYSCALE:以灰度模式加载图像cv.IMREAD_UNCHANGED:加载...原创 2020-03-30 14:08:55 · 345 阅读 · 0 评论 -
图像处理Pillow详解
一. Pillow简介 Pillow作为python的第三方图像处理库,提供了广泛的文件格式支持,强大的图像处理能力,主要包括图像储存、图像显示、格式转换以及基本的图像处理操作等。 PIL(Python Image Library)是python的第三方图像处理库,因其强大的功能与众多的使用人数,但由于PIL仅支持到Python 2.7,于是一群志愿者在PIL的基础...原创 2020-03-26 21:17:57 · 3586 阅读 · 0 评论