2024-09-30 20:37:02 发布
网友
我有一堆图片(附在下面)。我在每张图像中都有一个符号,我想使用openCV提取符号。然而,我不知道如何实现这一点,我也没有任何代码。是否有人有任何大致的想法,分别采取这些图像和自动删除的迹象,并有它的推广情况下,我添加了更多的图像类似于下面给出的示例图像
标志图像示例:
这里有一个可行的解决方案
限制: 此解决方案假定符号始终包含数字。如果不是这样,这可能不起作用
如果gpu标志不可用,则将其设置为false
gpu
import cv2 from easyocr import Reader image = cv2.imread("./image/path/image.jpg") languages = ['en', 'ar'] reader = Reader(languages, gpu = True) results = reader.readtext(image) def cleanup_text(text): return "".join([c if ord(c) < 128 else "" for c in text]).strip() for (bbox, text, prob) in results: text = cleanup_text(text) if text.isnumeric(): print(bbox) (tl, tr, br, bl) = bbox tl = (int(tl[0]), int(tl[1])) tr = (int(tr[0]), int(tr[1])) br = (int(br[0]), int(br[1])) bl = (int(bl[0]), int(bl[1])) cv2.rectangle(image, tl, br, (0, 255, 0), 2) cv2.putText(image, text, (tl[0], tl[1] - 10), cv2.FONT_HERSHEY_SIMPLEX, 0.8, (0, 255, 0), 2) cv2.imshow("Sign", image) cv2.waitKey(0) cv2.destroyAllWindows()
积分: 显示边界框和清除文本的代码从该blog中获得
这里有一个可行的解决方案
限制: 此解决方案假定符号始终包含数字。如果不是这样,这可能不起作用
如果
gpu
标志不可用,则将其设置为false积分: 显示边界框和清除文本的代码从该blog中获得
相关问题 更多 >
编程相关推荐