OpenCV
文章平均质量分 76
00000cj
计算机视觉,论文阅读记录
展开
-
常见仿射变换矩阵
如下图所示,点 \(v(x,y)\) 逆时针旋转到 \(v'(x',y')\)注意,这里的旋转矩阵 \(M\) 和上面代码中实现的旋转矩阵 \(M'\),两者互为转置 \(M'=M^{T}\)。这是因为在mmdet的实现中,最终的变换是通过函数实现的,在该函数中,当没有设置参数WARP_INVERSE_MAP即默认情况下,转换矩阵需要先进行操作。另外,上面代码的实现是完整的齐次坐标形式,这是因为2x2矩阵没法描述平移操作,为了将旋转与后面的缩放、平移、剪切统一表示,引入了齐次坐标。原创 2022-11-21 19:27:47 · 530 阅读 · 0 评论 -
scipy.ndimage.distance_transform_edt 和 cv2.distanceTransform用法
和的作用都是计算一张图上每个前景像素点到背景的最近距离。这里输入中前景为1,背景为0。cv2.distanceTransform的参数需要注意一下。原创 2022-10-13 20:05:09 · 2226 阅读 · 0 评论 -
OpenCV 4中的minAreaRect返回角度的范围
但是在最新的opencv-python 4.5.1.48版本中,这个角度的范围不再是负的了,变成了(0,90]。大小是的余角,相当于y轴顺时针旋转与最小外接矩形第一个重合的边之间的角度具体不清楚是从哪个版本开始改的,网上搜了一圈都没搜到这个问题,如果是我理解错了,欢迎评论指出。...原创 2021-02-03 19:03:56 · 3137 阅读 · 10 评论 -
多边形逼近cv2.approxPolyDP和Douglas-Peucker算法
在查看文本检测模型DBNet测试结果时发现有文本行没检测出来,因为DBNet是用语义分割模型检测出文本行的kernel,后处理对kernel进行膨胀得到完整的文本区域,查看模型输出图发现该行的kernel检测出来了,...原创 2020-12-09 21:17:34 · 4523 阅读 · 1 评论 -
cv2.minAreaRect报错的解决办法
在本地调试DBNet后处理函数时,代码跑到bounding_box = cv2.minAreaRect(contour)时报错,cv2.error: C:\projects\opencv-python\opencv\modules\imgproc\src\convhull.cpp:137: error: (-215) total >= 0 && (depth == 5 || depth == 4) in function cv::convexHull,打印了下输入发现本地contour原创 2020-12-09 14:11:58 · 1711 阅读 · 0 评论 -
cv2.getRotationMatrix2D的旋转矩阵的正确形式
以下图为例,首先图像坐标以左上为原点,图像中的点逆时针转到,可以得到即这是图片以左上角原点的结果,实际应用中我们可以指定旋转中心,通常是图片的中心,这种情况下的做法是:首先将旋转中心平移到原点 按上述描述的绕原点进行旋转 再将旋转中心平移回原来的位置在计算机图形学中,为了统一将平移、旋转、缩放等用矩阵.原创 2021-01-17 16:37:13 · 7147 阅读 · 5 评论