我对整个图像(img)进行了放大,但左上角的粗体文本/徽标仍未更改。每当输入图像中有徽标或一些粗体文本时,就会发生这种情况
dilated_img = cv2.dilate(img, np.ones((7, 7), np.uint8))
现在,我想以更高的值(> 7
)重新应用膨胀,但仅在该区域上。我无法在整个图像上应用具有更高价值的膨胀,因为这样会使我获得较差的结果。我想在整个图像上应用低值膨胀,然后在尚未膨胀的区域上重新应用高值膨胀
(这应该在每张图像上通用,而不仅仅是这张图像)
我该如何实现?
答案 0 :(得分:1)
如果要对矩形框执行操作,则可以按索引在区域中传递。
因此,首先将整个图像放大:
dilated_img = cv2.dilate(img, np.ones((5, 5), np.uint8))
然后覆盖需要更大膨胀的区域:
dilated_img[10:50, 30:40] = cv2.dilate(img[10:50, 30:40], np.ones((20, 20), np.uint8))