opencv绘图相关函数用法 opencv的create函数作用?

[更新]
·
·
分类:互联网
1304 阅读

opencv绘图相关函数用法

opencv的create函数作用?

opencv的create函数作用?

用于创建图像空间,包括图像大小和通道数。

opencv中提取的轮廓怎么用?

那要看你怎么提取了,有个cvfindcontours的函数你可以看一下,提取轮廓保存在cvseq结构中,然后每次取出header,并把指针指向next直到为空即可

opencv如何将两幅图片拼接?

前面已经有一种利用相机标定来进行拼接的方法,那种思路是可行,这里给出另外一种基于图像处理的拼接方法先用特征点匹配的方法,提取两幅图像的特征点,鲁棒性好的用SIFT,速度快的有SURF,ORB。
然后用RANSAC去除错误匹配点。
然后根据匹配点计算出homography单应性矩阵,即映射矩阵,然后用插值的方法把两幅图像拼接起来。所有这些步骤都可以在opencv里面找到函数可以看下这篇论文《基于特征点的全自动无缝图像拼接方法》下面是效果示例拼接结果

OpenCV已经将图像处理(识别)的算法写成函数了,那我们还有必要去学习这些算法吗?

本人刚开始学图像识别一个星期,现在在学习使用OpenCV,发现OpenCV已经把很多图像识别所需要的算法都写好成函数了,比如边缘检测,轮廓检测这些。那既然这样,我们只需要这些算法是干嘛的,然后使用的时候直接调用不就行了吗?

那要看你的目的是什么了。举例,汽车现在那么先进和易用了,还需要了解变速箱的原理吗?那得看你的目的是什么了,如果只是普通的开车,不需要了解。如果是修车师傅,那得了解。如果是汽车厂家工程师,那得非常了解。简单来说,看具体需求。

当然需要。opencv只是一个通用的视觉库集合,我们在实际项目应用中不一定能够直接使用,比如说有的算法效果非常好,但是运算量很大,一秒钟只能做几帧,所以这时候需要对算法进行优化,了解算法本身的原理才能对它进行算法上的优化或者裁剪。有的设备对内存的使用有要求,这也需要在了解算法的基础上才能知道怎样才能减少对内存的使用。

同一个目标,可能通过多个算法都可以达到,但是哪一个才是最有用的呢?如果不了解算法原理,可能就需要多次实验,然后取最好的结果。
还一个,现在图像岗位的面试,还是会问你算法原理的,不知基本原理,就谈不上改进和创新了。
所以,要学就要学的彻底些~