【发布时间】:2021-03-12 20:44:39
【问题描述】:
我有一张卡片,一张图片中有多个对象,我想使用卡片的宽度和高度或颜色裁剪卡片。
我可以使用以下代码进行裁剪:
import cv2
img = cv2.imread('/Users/akram/Downloads/img.jpg', 1)
x = 0
y = 0
width = 500
height = 500
cropped_img = img[y:y+height, x:x+width]
cv2.imshow("cropped_images", cropped_img)
cv2.waitKey(0)
但是当我有其他图像宽度卡width = 500 and height = 500和x = 200 y = 100时
我需要使用x = 200 and y = 100 编辑我的代码。
问题是我一直不知道卡片的位置,所以我需要创建一个动态代码来裁剪图像中任意位置 x 或 y 的卡片。
我不知道如何才能达到这个目的,我是 OpenCV 和计算机视觉方面的新手,实际上我是这个领域的新手。
示例图片
谁能帮我解决这个问题,谢谢?
【问题讨论】:
-
你能发布一两张示例图片吗?
-
@AndriyMakukha 我添加图像通常图像可以有两个对象卡和签名,谢谢帮助!!
-
您可以将卡片检测为轮廓,然后获取其周围的边界框,然后裁剪边界框。希望此链接对您有所帮助:docs.opencv.org/4.3.0/da/d0c/…
标签: python opencv image-processing deep-learning computer-vision