如何使用python删除opencv中文本图像中的Microsoft Word边框?

时间:2017-10-17 12:13:45

标签: python opencv

我有这张由Microsoft Word Office制作的边框照片: enter image description here

我想删除Microsoft Word Office的边框,如下所示: enter image description here

我尝试使用此代码但无法正常工作:

img = cv2.imread('border.png')
gray = cv2.cvtColor(img, cv2.COLOR_BGR2GRAY)
_, thresh = cv2.threshold(gray, 1, 255, cv2.THRESH_BINARY)

_,contours, hierarchy = cv2.findContours(thresh, cv2.RETR_EXTERNAL, cv2.CHAIN_APPROX_SIMPLE)
cnt = contours[0]
x, y, w, h = cv2.boundingRect(cnt)

crop = img[y:y + h, x:x + w]
cv2.imwrite('border.png', crop)
cv2.imshow("Rotated", crop)
cv2.waitKey(0)

那么我怎么能用opencv和python来做呢?

1 个答案:

答案 0 :(得分:0)

我认为最简单的方法就是像你一样使用投资回报率。

cv::Mat workingRegion = img(cv::Rect(x_coord,y_coord,width,height), img.type());

在使用Microsoft等软件创建的图像中,在线边框始终位于图像的同一部分。你可以把它剪掉。

要检测边界,我会使用OTSU阈值

cv::threshold(img,img,100,255, CV_THRESH_OTSU);

我会产生更好的结果。添加一些图片,这样我可以更好地帮助你。