簡體   English   中英

使用opencv java檢測圖像中文檔的邊界

[英]Detect boundaries of a document in an image using opencv java

我想在android中檢測文檔的4個角。 我使用opencv庫。

Iam使用以下方法 - (1)灰度圖像(2)應用中值模糊(3)應用自適應閾值(4)Canny邊緣檢測(5)找到輪廓(6)找到最大輪廓(7)得到邊緣和角點最大的輪廓

我的代碼是

srcImg = Utils.loadResource(this, R.drawable.test1, Highgui.CV_LOAD_IMAGE_COLOR);
Imgproc.cvtColor(srcImg, srcImg, Imgproc.COLOR_BGR2GRAY);
Imgproc.medianBlur(srcImg, srcImg, 9);
Imgproc.adaptiveThreshold(srcImg, srcImg, 255, Imgproc.ADAPTIVE_THRESH_MEAN_C, Imgproc.THRESH_BINARY_INV, 11, 2);
Imgproc.Canny(srcImg, srcImg, 50, 80);


Imgproc.findContours(srcImg,contours , hierarchy, Imgproc.RETR_TREE, Imgproc.CHAIN_APPROX_SIMPLE);

在精確邊緣檢測之后,許多點處的輪廓邊界被破壞,由此在圖像中檢測到的最大輪廓不是文檔的實際邊界。 在某些圖像中,最大輪廓顯示邊界的某些部分,但在某些圖像中,它指向文檔的中心或完全位於文檔外部

(A)如何在這種情況下繼續前進?

我應用的另一種方法是應用houghes線變換並計算以90度角相交的線的交點,但在這種情況下沒有獲得精確點。 當我把88

(B)如何處理那么多分

(C)還是我需要遵循完全不同的方法?

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM