![](/img/trans.png)
[英]Cut out or remove the pixels from an image that run into the black pixels of a mask
[英]Python - Remove Black Pixels originatin from the border of an image
我對圖像處理非常陌生,我正在嘗試清理類似於源自圖像邊界的黑色像素的圖片 1 的圖片。
圖像是來自 PDF 的剪輯字符,我嘗試使用 tesseract 處理以檢索字符。 我已經在 Stackoverflow 中搜索了答案,但只找到了擺脫黑色邊框的解決方案。 我需要用白色像素覆蓋角落的所有黑色像素,以便 tesseract 可以正確識別字符。
我無法更改用於剪輯字符的邊界框,因為字符位於邊界框的不同區域的中心,如果我剪切邊界框,我會剪切一些字符,如下所示
我的第一個猜測是遞歸地追蹤具有一定黑色閾值的像素,但我害怕在這種情況下計算時間,並且真的不知道從哪里開始以及如何開始,除了使用兩個二維 arrays ,一個帶有像素,一個帶有指示我是否已經在該像素上工作過。
幫助將不勝感激。
編輯:更多案例圖片,需要清除邊緣的黑色像素:
編輯:創建邊框圖像的代碼片段:
@staticmethod
def __get_border_image(image: Image) -> Image:
data = numpy.asarray(image)
border = cv2.copyMakeBorder(data, top=5, bottom=5, left=5, right=5, borderType=cv2.BORDER_CONSTANT)
return Image.fromarray(border)
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.