首页 > 编程知识 正文

vs2010opencv配置,opencv 读数据

时间:2023-05-04 23:24:40 阅读:63247 作者:2143

昨天在Moto写程序时遇到的问题。 当时对人脸图像的剪切很慎重,为了看到剪切的效果,写了一个程序显示出来,吓了一跳,所以试了6张图像,发现5张完全不一样,发生了错位。 每行稍微错位的话,最后看起来不像人的脸……这很为难。 如果自己写的那个切割工具有问题的话,头晕的话只能切掉两张以上了,找个原因吧。 又试着切了几张,还是不行。 不可思议的是,各个图像显示正确。 其实工作很简单,只需从一张图像中切出指定的几个区域。 因此,每次都试着切掉一定大小的区域。 100*100,没关系。 又是对的。 另外,返回动态大小的区域。 问题又出了…怪不得这个大小应该不会影响我的代码…无意中看到每次剪切的大小,发现剪切偶数大小的rect时总是正确的,奇数大小的rect显示错误,突然在IplImage中查看OpenCV文档中的例程,好像有人用过这个参数,我马上去查。 定义为“在字节中对齐的图像行”。 想起来了。 我从那时开始就不理解这个参数。 此size不应该等于*-width x *-nchannels x *-depth吗? 为什么需要定义? 做实验,分别取宽度为奇偶校验的图像,读取这个widthStep参数。 果然,偶数的话和上面的计算一样,奇数会变多。 那不难理解为什么会发生位置偏移。 通常,对奇数的width填充RGB,即3字节。 那么,现在开始对IplImage图像数据进行操作。 每一行都要取。 IplImage的image数据按BGRBGRBGR逐行存储。 然后,在每行中添加widthStep。 不能傻傻地用width x height的二维数组计算…

小参数困扰了我一个小时。 今后似乎必须注意这些细节。 如果仔细检查结果,拿着这些图像进行训练的话,一个垃圾就能做成凉面…。 我想要凉面,在家里吃了三次…。 另外,在使用OpenCV这样的库时,必须养成先看示例程序的习惯。 那时,只要仔细看就没关系…。 毕竟样品是标准的使用方法。

版权声明:该文观点仅代表作者本人。处理文章:请发送邮件至 三1五14八八95#扣扣.com 举报,一经查实,本站将立刻删除。