
图像处理&OpenCV
文章平均质量分 75
$南山种豆$
这个作者很懒,什么都没留下…
展开
-
KLT光流法运动目标跟踪的OpenCV实现
最近在研究KLT光流法对运动目标的跟踪,这里贴出我根据《Learning OpenCV3》及《OpenCV3 CookBook》相关源码进行简化得出的对视频中运动物体的跟踪实现。简介它是空间运动物体在观察成像平面上的像素运动的瞬时速度,是利用图像序列中像素在时间域上的变化以及相邻帧之间的相关性来找到上一帧跟当前帧之间存在的相应关系,从而计算出相邻帧之间物体的运动信息的一种方法。一般而言,光流是...原创 2018-12-06 18:50:09 · 3444 阅读 · 1 评论 -
使用OpenCV对视差图/深度图(CV_16S/CV_32S)进行保存和显示
OpenCV默认的图像格式为CV_8UC3,此时图像为3通道、8位RGB图像,每个通道所能表达的灰度阶为28=2562^8=25628=256。而视差图常为CV_16S或CV_32S等,如果直接使用cv::imwrite()保存视差图或深度图,则图像将被转成CV_8U格式,损失很大的精度。保存在进行保存的时候,为保存无压缩图像,需要使用到cv::imwrite()的第三个参数。显示方法一...原创 2019-01-22 20:24:43 · 18357 阅读 · 0 评论 -
OpenCV使用rowRange/colRange断言错误:Assertion failed (!fixedSize() || ((Mat*)obj)->size.operator()()...
博主在使用rowRange()时遇到了如下断言错误,虽然定位到了错误是在rowRange,但是仍找了半天原因,最后突然醒悟问题出在rowRange的用法上:rowRange(a,b)取的是a<=row<b,即边界范围为:[a,b)。因为这个小问题浪费了不少时间,这里记录一下,希望给遇到同样问题的同学提供一个解决思路。错误提示:Error: Assertion failed (!f...原创 2019-03-15 13:55:13 · 7549 阅读 · 0 评论 -
相机分辨率、图片分辨率、像素及图片尺寸关系的思考
以前没有深入思考过这个问题,最近遇到了相关问题,这里记录一下我的思考及学习所得,供参考,欢迎批评指正。原创 2019-01-30 20:28:21 · 7979 阅读 · 1 评论 -
OpenCV使用warpAffine实现图像旋转(防止切边)
原理使用warpAffine()进行图像旋转,是基于仿射变换的原理,通常2 ×\times× 3矩阵进行仿射变换:对于二维矩阵:X=[xy] X = \begin{bmatrix} x \\ y \\ \end{bmatrix} X=[xy]进行如下变换:T=A⋅[xy]+B T =A\cdot\begin{bmatrix} x \\ y \\ \end{bmatrix} +BT=A⋅...原创 2019-01-18 16:21:00 · 8372 阅读 · 3 评论