机器视觉
会的东西有点杂
机电专业本硕,在一自动化德企搞电气控制多年,尤爱代码编程,喜欢DIY各种小制作。
展开
-
眼在手外-机器人坐标系与相机坐标系标定方法
实现机械臂和相机的手眼标定,就是要通过双目相机坐标系、机械臂坐标系和机械臂 末端执行器三者的坐标系转换,求出手眼转换矩阵。设双目相机坐标系为 Oc,标定板坐标 系为 Ow,末端执行器坐标系为 Oe,机械臂底座的坐标系为 Ob。其中,设标定板坐标系到 双目相机坐标系的转换关系为𝑻𝒘 𝒄 ,双目相机坐标系到机械臂底座的坐标系的转换关系为 X, 机械臂底座坐标系到机械臂末端执行器坐标系的转换关系为𝑻𝒃 𝒆,其中,本文中要求解的就 是双目相机相对机械臂底座坐标系的转换关系,也即眼在手外情况下的手眼转换矩阵。原创 2024-08-04 20:57:43 · 1007 阅读 · 0 评论 -
双目视觉标定的一般方法
利用 Matlab 的 2018 版本中的 toolbox_calib 模 块分别对 ZED 2i 双目立体相机的左右两个相机进行单独标定,然后利用两相机的相关参 数进行双目相机的立体标定求解总体参数,最后得到 ZED 2i 双目立体相机的内部参数和 外部参数。双目立体相机是由两个单目相机根据 特定的参数组合而成,工作时可将左右两相机捕捉到的二维图像信息转换到三维立体空间 中,进而通过系列转换变为所需要的三维空间坐标信息。在 ZED 2i 双目立体相机的有效工作距离内,选择合适的距离和位置将相机固定。原创 2024-08-04 20:28:40 · 510 阅读 · 0 评论 -
从零开始搭建获取3D相机图像功能
打开我司提供的demo源文件,找到ImageConvert.dll与SR7Link.dll文件并复制到新工程的debug目录下,若需要使用我司提供的3D显示功能,则将demo源文件下的所有.dll文件的库全部复制到新建工程Debug目录下。客户根据需求(控制器数量,控制器连接相机数量,数据回调模式)选择添加控件。给连接控制器,断开连接,打开一次回调,软触发一次四个控件添加代码。控制器图像刷新回调和运行信息回调添加代码,可根据需求自定义。以下演示demo为单控制器1拖,选择一次回调。原创 2024-07-09 08:38:22 · 425 阅读 · 0 评论 -
深视智能3d相机SDK例程开发模式和相机控制器类
为了应对客户的多种需求,我们提供了多种模式可供选择,客户可根据自己的需求灵活使用。本司提供的例程包含的模式包括一次回调模式,阻塞模式,无限循环模式,2.5D模式。SsznCamControl类为基于通讯库SR7Link.dll封装的相机控制器类,定义了一些相机控制器的基本属性,图像数据刷新回调委托和控制器运行信息回调委托,以及控制器的操作、参数设置、数据与图像相互转换的方法函数。原创 2024-07-09 08:29:02 · 516 阅读 · 0 评论 -
基于open3d的半径滤波
半径滤波器比较简单粗暴。以某点为中心画一个圆计算落在该圆中点的数量,当数量大于给定值时,则保留该点,数量小于给定值则剔除该点。此算法运行速度快,依序迭代留下的点一定是最密集的,但是圆的半径和圆内点的数目都需要人工指定;radius_outlier_removal 实现半径滤波算法,移除给定球体中几乎没有邻居的点。原创 2024-01-23 09:36:44 · 550 阅读 · 0 评论 -
基于open3d的图像分割
以RANSAC平面分割为例,考虑到三个点可以确定一个平面,RANSAC算法会随机选择三个点来构建一个平面,并通过判断点云中有多少个点落在这个平面上来评估平面的正确程度。distance_threshold:定义一个点到估计平面的最大距离,距离内的点被认为是内点(inlier)。在点云处理中,open3d是一个常用的开源库,它提供了丰富的点云处理功能,包括点云分割。segment_plane函数会返回平面方程(A, B, C, D)以及内点索引的列表。ransac_n:定义用于随机抽样估计平面的点的个数。原创 2024-01-23 09:31:11 · 612 阅读 · 0 评论 -
open3d点云平移
open3d中点云的平移函数为:pcd.translate((tx, ty, tz), relative=True)。当relative为True时,(tx, ty, tz)表示点云平移的相对尺度,也就是平移了多少距离。当relative为False时,(tx, ty, tz)表示点云中心(质心)平移到的指定位置。质心可以坐标可以通过pcd.get_center()得到。原创 2024-01-22 10:44:37 · 531 阅读 · 0 评论 -
机器视觉之Open3D简介
Open3D是由英特尔实验室智能系统实验室开发的开源 3D 计算机视觉库。该库为开发人员提供了一个易于使用且高性能的3D数据处理平台。Open3D 包括用于 3D 几何处理、场景重建和 3D 机器学习的高级算法,使其成为从事 3D 计算机视觉工作的研究人员、工程师和开发人员的必备工具。Open3D 是一个全面的 3D 计算机视觉库,为开发人员提供了一系列特性和功能。Open3D 的一些主要功能包括:3D几何处理3D可视化场景重建3D 机器学习大规模点云处理跨平台支持Python API。原创 2024-01-22 10:26:44 · 634 阅读 · 0 评论 -
米粒图像预处理-图像背景均匀化
随着经济全球化程度的深入,中国巨大的市场消费力将吸引越来越多的国际米类品牌的进入,国内粮食市场的竞争将会日趋激烈,人们越来越注重粮食的安全和品质问题,粮食质量检测的市场潜力和发展空间日益显著。在粮食工业生产过程中,视觉检测可以代替人工检测,视觉检测方法即能够准确识别有质量问题的产品,又能够减轻操作者劳动强度,提高检测效率和准确率,对完善“精细农业”具有重要意义。观察原图,可以发现图像中心位置背景亮度强于其他部分亮度。因此需要先提取背景图像,再从原图中减去背景图像,以得到背景均匀的图像。原创 2024-01-19 12:58:30 · 544 阅读 · 0 评论 -
基于ORB算法的图像匹配
算法,该算法认为若某点像素值与其周围某邻域内一定数量的点的像素值相差较大,则该像素可能是角点。提出一种使用决策树学习方法加速的角点检测算法,即。基于ORB算法的图像匹配结果。原创 2024-01-19 10:49:08 · 940 阅读 · 0 评论 -
基于SURF算法的图像匹配
2006年Herbert Bay提出了SURF算法,该算法是对SIFT算法的改进,不仅继承了SIFT算法的优点,而且比SIFT算法速度快。下面是SURF算法的步骤。(1)建立积分图像(2)构建尺度空间(3)筛选特征点(4)计算特征点主方向(5)特征描述子生成原创 2024-01-18 08:41:24 · 628 阅读 · 0 评论 -
基于SIFT算法的图像匹配
尺度不变特征转换(Scale-invariant feature transform,简称SIFT) ,是一种用来侦测与描述影像中的局部性特征的算法,它在空间尺度中寻找极值点,提取位置、尺度、旋转不变量,生成特征描述子。SIFT算法的实质是在不同的尺度空间上查找关键点(特征点),并计算出关键点的方向。所有后面的对图像数据的操作都相对于关键点的方向、尺度和位置进行变换,从而提供对于这些变换的不变性。:搜索所有尺度上的图像位置,通过高斯微分函数来识别潜在的对于尺度和旋转不变的兴趣点。原创 2024-01-18 08:36:41 · 913 阅读 · 2 评论 -
基于变换域的模版匹配
图像的空间域与其他域之间的变换,如傅里叶变换,小波变换,轮廓波变换,剪切波变换等,实际上是图像在其他坐标领域中的表现。在空间域中,图像的信息是像素值和坐标位置;在其他域中,如傅里叶变换,图像的信息就是频率和幅度。简单的讲就是从不同的角度看图像而已。在其他域中对图像进行模板匹配处理,称为基于变换域的模板匹配。基于傅里叶变换的图像匹配是典型的基于变换域的模板匹配方法,图像的旋转、平移、比例变换等均能在傅里叶变换的频域中反映出来。基于快速傅里叶互变换的模板匹配。原创 2024-01-17 20:53:52 · 735 阅读 · 0 评论 -
墙地砖外形检测的技术方案-外部轮廓检测算法
检测的条件为:工业相机500万像素,距离墙地砖1米,工业相机安装位置与背景板是垂直的。通过与标准量具实测对比表明:轮廓的长度和宽度方向的误差≤ 0.3 mm,墙地砖的边直度和直角度重复性好,较好反映墙地砖外形特征。利用Canny算子得到墙地砖轮廓后,必须进一步将轮廓线精确分段成墙地砖的四条边,从而可得到墙地砖轮廓尺寸、边直度和直角度指标。第3,选择较低阈值,利用ramer算法将未被圆弧代替的轮廓线用多边形(polygon)近似。第1,选择较高阈值,利用ramer算法将轮廓线用多边形(Polygon)近似。原创 2024-01-17 19:26:35 · 551 阅读 · 0 评论 -
墙地砖外形检测的技术方案-图像分割
图b为使用Canny算子提取的边缘图像。发现LoG算子提取的边缘图像的边缘信息不完整,从图像的四个直角信息可以看出,而本案例中瓷砖四个直角信息很重要,而Canny算子提取到的四个角的边缘信息丰富,定位准确。Canny算子的优点为:边缘点被很好地定位,已定位的边缘接近真实边缘;单一的边缘点响应,仅存一个单一边缘点的位置。得到陶瓷碗区域填充后的图像,对图像进行边缘检测。这是属于图像分割中的内容,在图像的边缘中,可以利用导数算子对数字图像求差分,将边缘提取出来。a)原图像 b)边缘提取后只含碗边界的图像。原创 2024-01-16 13:03:56 · 506 阅读 · 0 评论 -
墙地砖外形检测的技术方案-图像形态学
本例使用最大类间方差法进行图像分割,将目标区域值设置为1,背景区域设置为0,得到图b。对图b进行区域填充,使用的形态学中的孔洞填充原理,操作的本质是对图像进行有限制条件的膨胀得到图c;第二,对分割后图像进行区域填充。本例中的背景为黑色,可以通过基本的全局阈值分割法将图像为背景和目标,也可以通过最大类间方差法进行图像阈值分割。得到的灰度图像需进行二值化处理和区域填充,涉及两个步骤,第一,对图像进行分割,将图像分割成目标和背景;a)原灰度图像 b)使用最大类间差法进行分割后的二值图像 c)区域填充后图像。原创 2024-01-16 12:58:30 · 561 阅读 · 0 评论 -
墙地砖外形检测的技术方案-图像增强
如图b为直方图规定化的模板图像,此图像为已采集的视觉效果较好的图像;图e为模板图像直方图,需要通过直方图规定化变换将对比度低的图像直方图与此直方图接近,达到改善视觉效果的目的。图c为规定化后的图像,视觉效果得到改善,图f为规定化后的直方图,此时的直方图与模板直方图的分布已经很接近。本例中使用漫射场光源,在采集图像的过程中,更容易可能会受环境中光源照射不足的可能性,导致采集的图像对比度不足,图像视觉效果较暗。可通过直方图均衡化或者直方图规定化。d)原图像直方图 e)规定化模板的直方图 f)规定化后的直方图。原创 2024-01-15 08:56:14 · 515 阅读 · 0 评论 -
墙地砖外形检测的技术方案-图像复原
为了去除图像在采集过程中可能出现的高斯噪声和椒盐噪声,本案例中需要对图像进行均值、中值滤波等去噪处理。也可以用上一节的方法对图像进行约束最小二乘滤波进行复原。本例中讲解使用图像平均法去噪,通过实验观察,图像采集中由电子元器件产生的通常是一种高斯噪声,因此用图像平均法可减轻这种噪声的影响。如图,为对含有高斯噪声的图像求平均,发现在100幅图像求平均时,图c图像接近无噪声污染的图像,噪声对图像的影响可以忽略不计。a)含有均值0方差0.02高斯噪声图像 b)10幅含噪声图像的平均 c)100幅含噪声图像平均。原创 2024-01-15 08:53:38 · 573 阅读 · 0 评论 -
墙地砖外形检测的技术方案-技术方案概述
墙地砖检测内容包括:轮廓尺寸、边直度和直角度特征。检测墙地砖检测系统的技术路线如图所示,包括的处理模块有:图像获取、图像复原、图像增强、图像分割、外部检测算法。下面分别讲解这个处理模块的作用。墙地砖检测的技术路线。原创 2024-01-14 21:56:34 · 438 阅读 · 0 评论 -
墙地砖外形检测的技术方案-图像获取
墙地砖外形检测硬件系统主要由工业相机、光源、瓷砖位置检测电路和上位机组成,其结构如图所示。为了提高系统检测精度和稳定性,系统采用的是较高精度的高速工业相机用于抓取墙地砖表面轮廓图像,图像数据通过USB接口向上位机传送;反射式光电开关用于触发工业相机,其状态信号送至光电开关状态检测板。上位机是整个系统的核心,其上安装的软件控制自动检测的整个过程。在图像测量过程以及视觉应用中,为确定空间物体表面某点的三维几何位置与其在图像中对应点之间的相互关系,必须建立相机成像的几何模型,这些几何模型参数就是相机参数。原创 2024-01-14 21:51:28 · 529 阅读 · 0 评论 -
陶瓷碗口缺口检测-图像分割
由于对碗口进行缺口检测,因此只需要碗口的边界信息。得到陶瓷碗区域填充后的图像,对图像进行边缘检测。这是属于图像分割中的内容,在图像的边缘中,可以利用导数算子对数字图像求差分,将边缘提取出来。本案例采用Canny边缘算子进行边缘提取,图a为原图像,图b为使用Canny算子提取的边缘图像。Canny算子的优点为:低错误率,所有边缘都可被找到,且没有伪响应;边缘点被很好地定位,已定位的边缘接近真实边缘;单一的边缘点响应,仅存一个单一边缘点的位置。a)原图像 b)边缘提取后只含碗边界的图像。原创 2024-01-14 21:46:43 · 669 阅读 · 0 评论 -
陶瓷碗口缺口检测-图像形态学
对得到的灰度图像,需要进行二值化处理和区域填充。二值化涉及两个步骤,第一,对图像行图像分割,将图像分割成目标和和背景;第二,对分割后图像进行区域填充。本例中的背景为黑色,可以通过基本的全局阈值分割法将图像为背景和目标。将目标区域值设置为1,背景区域设置为0,得到图b。此时图像中碗内的花纹与本案例的检测目标无关,只需要碗的边界信息。对图b进行区域填充,使用的形态学中的孔洞填充原理,得到图c。a)原灰度图像 b)二值化后图像 c)区域填充后图像。原创 2024-01-13 19:05:04 · 459 阅读 · 0 评论 -
陶瓷碗口缺口检测-图像增强
在采集图像的过程中,可能会有由于采集图像环境中光源照射不足,导致采集的图像对比度不足,图像视觉效果较暗的情况,可以通过直方图均衡化或者直方图规定化。如图a为原图像对比度低,图c为其直方图,可以看出灰度范围过于集中。如图b为对原图像进行均衡化后的图像,图d为其直方图,可以看出均衡化后各灰度级分布均匀,图像视觉效果有改善。a)原图像 b)直方图均衡化后图像 c)原图像直方图 d)均衡化后直方图。原创 2024-01-13 19:01:31 · 572 阅读 · 0 评论 -
陶瓷碗口缺口检测-图像获取与图像复原
为了去除图像在采集过程中可能出现的高斯噪声和椒盐噪声,本案例中需要对图像进行均值、中值滤波等去噪处理。基于此,需要对图像进行复原操作以去除一些单方向的运动模糊。如上图,采集的图像有 方向运动模糊并含有高斯噪声的图像进行约束最小二乘滤波复原,得到图b,可以看出复原效果较好。对图像进行灰度化处理, 图a为采集到的原彩色图像,对原彩色图像进行灰度化,将RGB三通道的彩色图像转化为单通道只有灰度值的灰度图像,如图b,以便后续进一步处理。a) 方向运动模糊并含有高斯噪声的图像 b)约束最小二乘方滤波复原后结果。原创 2024-01-12 08:52:45 · 567 阅读 · 0 评论 -
陶瓷碗口缺口检测-技术方案
陶瓷碗口缺口检测包含如下五个步骤。首先通过CMOS相机获取陶瓷碗的图像,二值化处理后通过图像复原技术进行去噪声和去运动模糊,通过图像增强技术增加图像对比。通过形态学处理后显示区域填充后的图像,然后通过图像分割算法和缺口提取算法获得陶瓷碗口缺陷信息。陶瓷碗出厂前需要做的质量检测工作包括对陶瓷碗是否有缺口的检测,利用图像处理技术也可以对陶瓷碗的缺口进行检测和定位。陶瓷碗口缺口检测的技术路线。原创 2024-01-12 08:34:12 · 591 阅读 · 0 评论 -
陶瓷碗口圆度检测案例-圆度检测实验
图a,为待检测的原图,然后经过图像的灰度化、二值化可获得一个清晰的含有外边界的陶瓷图像,其中二值化过程中的预设阈值为170。鉴于仅关注陶瓷外边界的圆度,基于不需了解陶瓷内部花纹内容的事实,实验利用形态学的孔洞填充可填充陶瓷外边界以内的内容,最后借助边界提取算子Canny算子能够提取出封闭的单像素外边界。由表可知,算法能够在0.5左右完成整个缺陷检测过程,证明算法的有效性和实时性。a)原图像 b)二值化图 c)填充陶瓷外边界图 d)提取的封闭的单像素外边界。原创 2024-01-11 08:44:53 · 537 阅读 · 0 评论 -
陶瓷碗口圆度检测案例-圆心定位与圆度检测
在实际中,存在以下两种情况会导致上述算法无法准确计算圆心的坐标:第一,当陶瓷外边界不圆时,每次利用随机选择的A1、A2和A3所确定的圆心均会不同。若Var大于 T1 ,表明中间(n-2)个圆心较分散,判定该陶瓷器件外边界不圆,直接丢弃。若Var小于T1 ,表明该陶瓷外边界较圆,此时将中间(n-2)个圆心的平均值作为最后的陶瓷圆心 ,其中。(a)重复执行n次圆心计算实验:重复n次试验,获得n个圆心坐标;(c)陶瓷外边界圆度的判定以及最终圆心的确定。为圆心的位置坐标,为标准圆的半径。原创 2024-01-11 08:39:05 · 585 阅读 · 0 评论 -
陶瓷碗口圆度检测案例陶瓷边缘提取
本模块嵌套在硬件仿真平台之中,协助实现陶瓷图像数据的同步采集以及陶瓷生产流水线的智能控制两大功能。由于陶瓷随传送带动态移动,因此在合适的时间利用数据采集设备对线上陶瓷进行图像摄取以获得一张完整、几何形变较小的图片至关重要。本模块是系统的核心,其功能是利用计算机视觉技术在上位机上设计一套针对陶瓷圆度的缺陷检测算法,以便上位机对接收的陶瓷图像进行处理、识别并做出智能判断。本算法分为“陶瓷边界的提取”、“外边界的圆心定位”和“陶瓷圆度检测”三大部分。两种边缘算子进行边缘提取。图像灰度化和二值化处理。原创 2024-01-10 09:33:40 · 611 阅读 · 0 评论 -
陶瓷碗口圆度检测案例-原理概述
随着社会的发展和人民生活水平的提高,现在市场不仅对陶瓷产品数量提出新的要求,还在质量上提出了更加严苛的标准。然而,由于日用陶瓷制品韧性较低,生产工艺比较特殊,成批生产时质量不易控制等特点,对陶瓷制品进行缺陷检测,尤其是无损缺陷检测,意义重大。原创 2024-01-10 08:37:39 · 473 阅读 · 0 评论 -
基于机器视觉的车牌检测-车牌识别案例
根据前面模板匹配车牌识别原理,首先对该车牌图像进行粗略定位,通过利用Canny算子对图像进行边缘检测、灰度化以及腐蚀实现车牌粗略定位。其次对车牌图像进行精确定位,结构元SE选用长方形的样式,结构元SE小于该长方形面积值,并使用闭运算,闭运算是通过填充图像的凹角来滤波图像。闭运算完之后,车牌部分被连接在一起。最后,对小面积进行切除,可得到完美的车牌区域实现精确定位。采用模板识别的方法,对于切割之后的图像和模板逐一像素点进行比较,相同则加1,最后逐一进行匹配,输出最高的匹配度。最后得到车牌识别结果。原创 2024-01-09 08:50:11 · 1011 阅读 · 0 评论 -
基于机器视觉的车牌检测-字符识别
实际实验中充分考虑了我国普通小汽车牌照的特点,即第一位字符是汉字, 分别代表各个省的简称,第二位是A ~ Z 的字母,后五位则是数字和字母的混合搭配,因此为了提高比对过程的效率和准确性,分别对第一位、第二位和后五位字符进行识别。将归一化的字符图像与模板库中的字符进行比对,在。在识别完成后输出所得的车牌字符结果。建立标准化的字符模板库;模板匹配方法是最常用的方法。第三类:BP神经网络方法。第一类:结构识别方法。第二类:统计识别方法。第四类:模板匹配方法。原创 2024-01-09 08:44:03 · 411 阅读 · 0 评论 -
基于机器视觉的车牌检测-车牌字符分割
根据阈值分割原理对车牌字符进行分割。阈值分割的原理是:对灰度图像进行阈值分割时,阈值分割算法主要有以下两个步骤:第一,确定需要进行分割的阈值;第二,将阈值与像素点的灰度值比较,以分割图像的像素。公式中设定一个阈值 , 用 将图像的像素分成两部分:灰度值大于 的像素集合设置为前景目标集合,用灰度值1表示;灰度值小于 的像素集合设置为背景目标集合,用灰度值0表示,最后得到二值化图像。原创 2024-01-08 08:32:35 · 541 阅读 · 0 评论 -
基于机器视觉的车牌检测-车牌图像倾斜矫正位
Radon变换常用于车牌图像倾斜矫正,主要包括水平倾斜和垂直倾斜矫正。Radon变换定义:下图显示了在指定的旋转角度的单一投影。间距为1个像素的平行光穿过图像,则radon变换计算穿过图像光线的线积分。Radon变换的本质是将原来的XY平面内的点映射到AB平面上,原来在XY平面上的一条直线所有的点在AB平面上都位于同一点。原创 2024-01-08 08:28:49 · 711 阅读 · 0 评论 -
基于机器视觉的车牌检测-车牌粗略定位
基于颜色特征的定位算法。该算法不用对整幅图像进行边缘检测,而是直接寻找图片中颜色、形状及纹理符合车牌特征的连通区域。实际上,在具体的过程应用中,一般会筛选出长宽比在2-5.5之间的矩形,会导致不是车牌的矩形区域入选,可使用颜色特征,排除掉这些非车牌区域,得到完整的车牌位置。a)车牌灰度图像b)车牌灰度直方图 c)边缘检测图像d)RGB图像中的蓝色区域 e)蓝色区域二值化 f) 蓝色区域长宽比 g)图像腐蚀 h)图像膨胀 i)图像取交 j)平滑图像轮廓k)移除小对象 l)移除比例不对区域m)车牌定位图像。原创 2024-01-07 20:36:57 · 481 阅读 · 0 评论 -
基于机器视觉的车牌检测-边缘检测因子的选择
车牌识别在检测报警、汽车出入登记、交通违法违章以及移动电子警察方面应用广泛。车牌识别过程为:首先通过摄像头获取包含车牌的彩色图像;然后进行车牌边缘检测,先粗略定位到车牌位置,再精细定位;最后根据我国车牌的样式,第一个汉字代表省份,第二个大写英文字母是代表地市,后面5个数字与字母混合,利用字符分割和模板匹配实现车牌识别。边缘检测因子的选择边缘检测算子有Sobel、Prewitt、Canny算子的特点。原创 2024-01-07 20:31:30 · 551 阅读 · 0 评论 -
应用OpenCV绘制箭头
语法格式:cv2.arrowedLine(img, pt1, pt2, color[, thickness[, line_type[, shift[, tipLength]]]])默认值为1,设置为-1时表示绘制填充图形(绘制直线时,不能设置为-1)。lineType表示线条类型,默认值为cv2.Line_8。color为线条的颜色。通常使用BGR模型表示颜色,如(255,0,0)表示蓝色。pt1:直线的起点位置,是一个坐标点,类似(X,Y)这样。pt2:直线的终点位置,是一个坐标点,类似(X,Y)这样。原创 2024-01-06 20:23:45 · 1235 阅读 · 0 评论 -
基于OpenCV的透视变换
透视变换(Perspective Transformation)是仿射变换的一种非线性扩展,是将图片投影到一个新的视平面(Viewing Plane),也称作投影映射(Projective Mapping)。格式:cv2.warpPerspective(src, M, dsize[, dst[, flags[, borderMode[, borderValue]]]])首先根据变换前后的四个点用cv.getPerspectiveTransform()生成3×3的变换矩阵。src:原图像中4个点的坐标。原创 2024-01-06 19:51:03 · 692 阅读 · 0 评论 -
基于OpenCV的透视变化
透视变换(Perspective Transformation)是仿射变换的一种非线性扩展,是将图片投影到一个新的视平面(Viewing Plane),也称作投影映射(Projective Mapping)。格式:cv2.warpPerspective(src, M, dsize[, dst[, flags[, borderMode[, borderValue]]]])首先根据变换前后的四个点用cv.getPerspectiveTransform()生成3×3的变换矩阵。src:原图像中4个点的坐标。原创 2024-01-04 10:25:19 · 665 阅读 · 0 评论 -
基于OpenCV的仿射变换
flages:表示插值方式,默认为 flags=cv2.INTER_LINEAR,表示线性插值,cv2.INTER_NEAREST为最近邻插值,cv2.INTER_AREA为区域插值,cv2.INTER_CUBIC为三次样条插值,cv2.INTER_LANCAOS4为Lanczos插值。仿射变换可以通过一系列的原子变换的复合来实现包括:平移(Translation)、缩放(Scale)、翻转(Flip)、旋转(Rotation)和错切(Shear)dst:输出图像,其大小为dsize。原创 2024-01-04 10:22:11 · 844 阅读 · 1 评论 -
OpenCV中实现图像旋转的方法
OpenCV中实现图像旋转的方法函数:cv2.flip()功能:水平或者垂直翻转格式:dst= cv2.flip(src,flipCode[,dst])参数说明:src:输入图像dst:和原图像具有相同大小、类型的目标图像。flipCode:旋转类型 ,取值如下:0:绕x轴翻转(垂直翻转)大于0整数:绕y轴翻转(水平翻转)小于0整数:同时绕x轴和y轴翻转(水平和垂直翻转)原创 2024-01-03 20:29:02 · 811 阅读 · 0 评论