【发布时间】:2016-03-27 16:12:47
【问题描述】:
我正在使用 OpenCV 的 MSER 特征检测器来查找文本区域。使用以下 Python 代码,我可以检测文本(和一些非文本)并围绕每个字母绘制多边形曲线。现在,我需要使用 matplotlib 使用不同的颜色绘制这些文本(更具体地说是每个字母表)。不同的颜色在这里很重要。我是 matplotlib 的新手,我不知道如何实现它。我寻求你的指导。我不需要完整的解决方案,但一些提示会有所帮助。
import numpy as np
import cv2
import matplotlib.pyplot as plt #plt.plot(x,y) plt.show()
img = cv2.imread('TestText.png')
mser = cv2.MSER_create()
gray = cv2.cvtColor(img, cv2.COLOR_BGR2GRAY)
vis = img.copy()
regions = mser.detectRegions(gray, None)
hulls = [cv2.convexHull(p.reshape(-1, 1, 2)) for p in regions]
cv2.polylines(vis, hulls, 1, (0, 255, 0))
# cv2.putText(vis, str('change'), (20, 20), cv2.FONT_HERSHEY_SIMPLEX, 2, (255, 0, 0))
# cv2.fillPoly(vis, hulls, (0, 255, 0))
# cv2.imwrite("test.png", vis)
cv2.imshow('img', vis)
cv2.waitKey(0)
cv2.destroyAllWindows()
【问题讨论】:
-
将
drawContours与CV_FILLED和一些随机颜色一起使用,就像使用findContours返回的轮廓一样
标签: python opencv matplotlib