回答
因此,這裏有兩種情況,使用一些隨機角度或相同的角度,2行可變長度,以及它們的絕對值f fs。
所以有很多方法可以通過查看它們的fft來判斷它們是否平行,我會給出一個更簡單方向的提示,從fft'ed圖像的中心開始。 ..
謝謝,這真的很有幫助。 我知道fft是對稱的。但是fft圖像中的線條比原始圖像中的線條更粗。 我如何在變換圖像上運行並實際檢查它? –
如果您有興趣確定許多等距平行線的週期性,那麼可以使用FFT。在這種情況下,FFT變換後的圖像會給出特定頻率的峯值。通過閾值處理,您還可以擺脫圖像中的這些線條。但是,您實際上不會找到圖像中的線條。
爲了找到平行線,您可以使用其他技術,如:
Thnaks的答案。但我怎麼知道tresholding的價值? –
我不想找到平行線。我只需要使用trandorm圖像來說明這些線是否平行。對或錯。 –
如果你只有2行而不是FFT是一個壞主意。這是緩慢而複雜的。
最簡單的實現是平滑圖像。計算梯度角度(atan2(gradY,gradX))
而不是將它們放在直方圖中。如果您有一個清晰的峯值 - 線條平行。否則,他們不是。從直方圖中,您還可以知道每條線的角度(局部最大值代表一條線)。
最快運行時間將使用連接組件風格。
- 在循環中搜索黑色圖像,直到找到白色像素。這是一個行開始
- 遞歸遍歷像素鄰居,直到找到最遠的像素。這是行的末尾
- 當您知道起點和終點時,您可以計算每行的斜率
atan2(endY-startY,endX-startX)
。現在你可以比較分析線條。如果它們的斜率差異超過0.1弧度(5度)的差異,則線條不被視爲平行。該解決方案適用於線中的任意量,同時也給出了每行+數學方程行AX + BY + C = 0
如果你還是堅持FFT的所有像素的名單我建議旋轉原始圖像或FFT圖像,使至少一條線平行於Y軸(FFT表示在X軸上)。比較容易檢查第二行是否平行。如果它們平行,則它們都與y軸對齊,並且意味着整個FFT變換位於X軸上。只要檢查幾個中心行上面的FFT的所有像素都是零。如果不是這樣,則意味着線不平行,因爲第一條線位於FFT圖像的X軸上,第二條線位於上方和下方。 P.s.我沒有解釋如何旋轉圖像,所以至少有一條線與Y軸對齊。如果您在原始圖像上執行此操作,只需計算漸變的方向(角度),找到最大值並旋轉圖像(減去以度爲單位的最大值)。在FFT圖像上,您可以做同樣的事情,因爲圖像中的兩行仍然看起來像FFT中的兩行。
重要注意事項:您的問題得到了許多來自其他人的不準確答案。這裏有一些更正
- 不要使用霍夫或氡變換!它相對較慢,對於只有兩條線的簡單任務來說是完全矯枉過正的。
- 當你使用FFT時,你實際上可以知道線條的位置。到目前爲止,我們使用FFT的幅度圖像,但也存在相位圖像,並且線條的位置在相位圖像中被編碼。
結束語:我建議您實施我稱爲最快運行時間的解決方案。如果圖像具有N個像素,則平均執行O(N)
步驟,而只有FFT至少執行O(N*log(N))
步驟。
- 1. 使用OpenCV進行水平線檢測
- 2. Python openCV檢測平行線
- 3. 如何檢測圖像中的部分垂直/水平線?
- 4. 如何使用變換圖像檢查線是否平行?
- 5. 使用MATLAB對視頻進行圖像檢測和跟蹤
- 6. 使用圖像檢測來檢測線條?
- 7. 使用頻域進行圖像處理 - 複製圖像
- 8. 使用OpenCv檢測圖像中的矩形明亮區域
- 9. 檢測圖像中的直線
- 10. 算法檢測圖像中的線?
- 11. OpenCV - 獲取視頻幀內檢測到的圖像的法線
- 12. 使用OpenCV進行圖像檢測
- 13. 圖像分類 - 檢測平面圖
- 14. 使用Python檢測圖像中激光/光線的邊緣
- 15. 使用EmguCV從圖像中檢測文本區域
- 16. 音頻電平檢測
- 17. 檢測空白區域的圖像
- 18. Python如何用HoughLines和OpenCV檢測圖像中的垂直和水平線?
- 19. 如何使用Python在圖像中檢測激光線
- 20. 圖像邊緣檢測和平滑?
- 21. 檢測圖像上的黑屏線ios
- 22. 視頻中的線路功率檢測
- 23. 如何使用HoughLinesP檢測OpenCV中的水平線?
- 24. 如何使用Haar小波檢測圖像上的線條?
- 25. 線檢測二進制圖像使用OpenCV的
- 26. 使用URL生成鏈接預覽並檢測視頻/圖像!
- 27. 如何檢測圖像內的「圖像區域」百分比?
- 28. 在Web頁面上檢測圖像中的圖形區域
- 29. 谷歌地圖中的圖像區域/樹木檢測
- 30. 檢測圖像中的特定對象,即使用opencv進行圖像分割
您確定需要使用頻域嗎?還有其他方法,如hough變換用於此目的。 –
是的,我知道如何做到這一點與霍夫變形。我想用我從fft –
Noam得到的trnaform圖像找到它,示例圖像將幫助我們瞭解您的問題的級別,即圖像的清晰程度,除了事實之外是否還有關於線條的任何信息它們是否平行等... – bla