我想用k-NN分類器做一個對象識別程序。我爲分類器的訓練部分和一些圖像識別出了一堆圖像。這些圖像是灰度圖,每個圖像都有一個對象。問題是隻有物體的邊緣(沒有填充),所以我不認爲使用regionprops(img,'centroid')
將正確工作,因爲我明白... 那麼我怎麼才能得到他們的重心?Matlab - 只有邊緣的對象的質量中心
0
A
回答
1
xenoclast的回答應該很清楚,只是爲了增加一些額外的東西。 當你完成從你的灰度圖像創建二進制圖像使用im2bw
;如果對象的邊緣是完全覆蓋對象的邊界,則可以直接使用regionprops(bw,'centroid')
,而不必通過imfill
。
0
第一步是用im2bw
對圖像進行二值化處理。然後,您可以使用imfill(img, 'holes')
將其從輪廓轉變爲實心實體。之後,regionprops
將按預期工作。
+0
它不工作,它必須是自動的,我不能在執行程序時選擇要填充的孔 – user2952272
+0
'imfill'自己產生gui,但是使用imfill(img,'holes') '是一個自動過程(只要你的輪廓被關閉)。 – xenoclast
相關問題
- 1. 評估IplImages的邊緣質量
- 2. 使用邊緣檢測和邊界框的MATLAB對象檢測
- 3. 在Matlab中kmeans的質心
- 4. MatLab的 - histc許多邊緣矢量
- 5. Three.JS線框材質 - 所有多邊形與邊緣對比
- 6. Matlab的「interp2」在邊緣
- 7. 通過邊緣Matlab的
- 8. Matlab處理邊緣
- 9. c中opencv輪廓/對象的質心?
- 10. 不含kmeans的質心matlab
- 11. MATLAB中的Canny邊緣檢測器
- 12. MATLAB中的輪廓線邊緣檢測
- 13. 只有HTML和CSS的尖銳邊緣
- 14. 顏色只有div的一個邊緣?
- 15. 只有邊緣形狀的cocos2D碰撞
- 16. 加權邊緣樹的中心
- 17. 帶邊緣的基礎網格中心
- 18. 閃存對象的質量
- 19. Opencv:邊緣檢測,擴張和質心繪圖
- 20. 切比雪夫質心,顯然在邊緣情況下失敗
- 21. Box2D質量中心
- 22. 如何找到對象的質心?
- 23. 如何提高透明畫布紋理的邊緣質量?
- 24. 線路質量非常低,鋸齒狀或模糊的邊緣
- 25. Matlab imwrite()質量
- 26. 邊緣去除(在Matlab)
- 27. Sobel邊緣檢測 - MATLAB
- 28. MATLAB streamribbon邊緣顏色
- 29. 在質心中移動對象視口
- 30. Div只有在iphone上有右邊緣
這工作謝謝你。我還有另外一個問題:我讀過'regionprops(bw,'centroid')'按維度順序返回元素,這是否意味着第一個元素將是最小元素的質心,最後一個元素是該地區的質心? – user2952272
'regionprops()'返回的值是N個結構體。 N是輸入圖像中連接組件的數量(或對象數量)。你可以看看這個http://www.mathworks.com/help/images/ref/regionprops.html?refresh=true#outputarg_stats 你可以試試看看返回結構的順序。 'BW = imread('text.png'); s = regionprops(BW,'centroid');對於n = 1:長度爲 imshow(BW) 保持在 上:plot(s(n).Centroid(:, 1),s(n).Centroid(:,2),'b *') 暫停(0.2) end' – jacaheyo