如何在Matlab中的「square」中找到四個角的座標?我嘗試了corner
,regionprops('Extrema')
和detectMinEigenFeatures
,但沒有運氣。問題是藍色的方形不是一個完美的方形,所以我需要某種銳化邊緣技術或更「智能」的查找角點算法來找到它們。如何在Matlab中找到拐角的座標?
0
A
回答
1
因爲我是一個好人,我已經翻譯了TASOS的解釋相關成代碼,檢查意見:
%Open your image
I = imread('square.png');
I = im2bw(I(:,:,3));
%Compute the centroid
centroid = round(size(I)/2);
%Find the pixels that create the square
[x,y] = find(I);
%Change the origin
X = [y,x]-centroid;
%Sort the data
X = sortrows(X,[1 2]);
%Cartesian to polar coordinates
[theta,rho] = cart2pol(X(:,1),X(:,2));
%sort the polar coordinate according to the angle.
[POL,index] = sortrows([theta,rho],1);
%Smoothing, using a convolution
len = 15 %the smoothing factor
POL(:,2) = conv(POL(:,2),ones(len ,1),'same')./conv(ones(length(POL(:,2)),1),ones(len ,1),'same');
%Find the peaks
pfind = POL(:,2);
pfind(pfind<mean(pfind)) = 0;
[~,pos] = findpeaks(pfind);
%Change (again) the origin
X = X+centroid;
%Plot the result
plot(POL(:,1),POL(:,2))
hold on
plot(POL(pos,1),POL(pos,2),'ro')
figure
imshow(I)
hold on
plot(X(index(pos),1),X(index(pos),2),'ro')
結果:
最終檢測:
+0
尼斯:)我完全贊同這個代碼:頁 –
3
假設你在「圖像」做這種模式,而不是分析,從質心對你的形狀每個像素計算距離,然後繪製以此爲角度的功能(即就好像您從質心和水平線開始,然後旋轉該線並記下每個角度處「半徑」的長度)。你的圖形應該是一條有4個局部峯的曲線,然後你可以分離並追溯到它們的座標。
或者,如果假設角落相對保證靠近圖像角落,則通過從圖像角落執行上述過程並找到最小值限制自己找到相應圖像象限中的形狀角落,然後重複此4倍(即在每個轉角處)
+0
這是一個很棒的建議,你能否提供一些代碼作爲例子? – Jimbo
相關問題
- 1. 如何從GPUImageHarrisCornerDetector獲取拐角的座標?
- 2. 在旋轉之前確定拐角的原始座標
- 3. 如何在matlab中獲取圖像中角點的座標
- 4. 如何使用Matlab找到含噪數據序列的拐點?
- 5. 查找角色的座標?
- 6. 如何在MATLAB中找到三角形的角度
- 7. 如何直角座標到圖像座標FreeType中
- 8. 如何在MATLAB中刪除座標軸
- 9. 如何找到數據集的拐點?
- 10. 如何在Matlab中找到座標爲(i,j,k)的點的26個鄰居?
- 11. 如何找到等邊三角形的第三個座標?
- 12. 如何從使用座標找到最短路徑 - Matlab
- 13. 如何找到兩個座標及其對應角度的三角形的第三座標
- 14. 如何從atan2角度回到座標
- 15. 拐角檢測
- 16. 如何在控制檯窗口中找到光標的座標?
- 17. 如何在HTML中找到鼠標的座標
- 18. 如何從角度找到(x,y)座標
- 19. 如何防止MATLAB中的fill命令創建沒有「拐角」的框
- 20. 如何繪製GPS在Matlab座標
- 21. 如何找到點的座標?
- 22. 如何找到UILabel的結束座標?
- 23. 如何找到索引的座標?
- 24. 如何查找圖像中矩形的角點座標
- 25. 基於MATLAB中原始座標的隨機角度生成座標
- 26. 如何在matlab中找到旋轉物體的角落?
- 27. 在MongoDB中找到最接近的座標,以便座標
- 28. MATLAB如何讓鼠標點擊座標
- 29. Matlab座標系?
- 30. matlab座標
我是否點擊他們用鼠標不是一個選項? –
不是一個選項,不允許用戶輸入。 – Jimbo
「允許」還是僅僅「不切實際」?這是一次性問題,還是您有四萬億的類似圖像需要處理? –