2014-04-28 104 views
1

我想背景和前景分開一組70個圖像。但是,當我用GrabCut算法嘗試時,我發現隨着背景,前景也被刪除。問題是,我無法手動執行此操作。交互式前景提取使用Python中GrabCut,OpenCV的

這是我原來的圖像:

這是GrabCut結果:

enter image description here

+1

在'GrabCut'您需要在您的前景指定邊界矩形!你是怎麼做到的(你說你必須自動)? – Hadi

+0

@Constantine是的,因爲我有70個不同的圖像,並且我很難拍攝每張圖像並單獨執行。 –

+0

它可能不適用於一個矩形。之後,您可能想要提供一些修改以獲得更好的結果。另外,結果可能會隨着迭代而改變。 http://docs.opencv.org/trunk/doc/py_tutorials/py_imgproc/py_grabcut/py_grabcut.html#grabcut –

回答

1

正如你不能手動繪製矩形,最好的辦法就是你可以嘗試給邊界框在原始圖像內部只有10-20像素寬度(就像內部邊界一樣)並嘗試使用它。 但是,如果您感興趣的前景物體位於邊界,則會在此情況下被切掉。

,可以通過檢查最大的斑點和輸出圖像的黑色像素數可以一定程度上避免,你可以爲這種情況下,直到從邊境10-20像素寬度遠回恢復原來的像素值。大多數情況下,您必須對結果進行後檢查並應用一些啓發式算法以至少恢復原始圖像的部分。

+0

非常感謝。 –