繁体   English   中英

如何在Python中的图像中找到矩形的坐标?

[英]How to find the coordinates of a rectangle in an image in Python?

我在图像中有一个文本,它周围有一个边界框,如下所示:

在此处输入图像描述

我想要做的是找到左上角和右下角的坐标来计算矩形的对角线。 我没有在 python 库中找到任何特别的东西。 这是矩形的代码:

image = cv2.imread('output.jpg')
gray = cv2.cvtColor(image, cv2.COLOR_BGR2GRAY)
blur = cv2.GaussianBlur(gray, (9,9), 0)
thresh = 
cv2.adaptiveThreshold(blur,255,cv2.ADAPTIVE_THRESH_GAUSSIAN_C, 
cv2.THRESH_BINARY_INV,11,30)


kernel = cv2.getStructuringElement(cv2.MORPH_RECT, (9,9))
dilate = cv2.dilate(thresh, kernel, iterations=4)


cnts = cv2.findContours(dilate, cv2.RETR_EXTERNAL, 
cv2.CHAIN_APPROX_SIMPLE)
cnts = cnts[0] if len(cnts) == 2 else cnts[1]

ROI_number = 0
for c in cnts:
   area = cv2.contourArea(c)
   if area > 10000:
     x,y,w,h = cv2.boundingRect(c)
     boundbox = cv2.rectangle(image, (x, y), (x + w, y + h), 
     (36,255,12), 3)

有任何想法吗? 先感谢您!

如果你有图像数组,你可以编写一个算法,首先水平扫描每行数组,然后垂直搜索你正在寻找的 y 和 x 的坐标。 这是一个 RGB 图像,矩形看起来非常明显并且对比度很好,所以我建议您首先提取图像的“G”,为此您必须抽取阵列以提取图像的绿色部分图像,然后运行一个 for 循环,在该行或该列中寻找具有您喜欢的强度值的一定数量的像素,然后返回您找到它的索引作为坐标。

此致

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM