答えて
あなたは試してみて、その後、ラインからの角度を計算し、試してみて、その行を発見するHoughLinesP()
を使用することができます。あなたは、画像を回転させる必要がある場合には、ndimage.rotate()
に渡すことができます。
import numpy as np
import cv2
import math
from scipy import ndimage
img_before = cv2.imread('find_angle.jpg')
img_gray = cv2.cvtColor(img_before, cv2.COLOR_BGR2GRAY)
img_edges = cv2.Canny(img_gray, 100, 100, apertureSize=3)
lines = cv2.HoughLinesP(img_edges, 1, math.pi/180.0, 100, minLineLength=80, maxLineGap=5)
angles = []
for x1, y1, x2, y2 in lines[0]:
cv2.line(img_before, (x1, y1), (x2, y2), (255, 0, 0), 3)
angle = math.degrees(math.atan2(y2 - y1, x2 - x1))
angles.append(90 + angle)
median_angle = np.median(angles)
img_rotated = ndimage.rotate(img_before, median_angle)
cv2.imshow("Result", img_rotated)
key = cv2.waitKey(0)
cv2.imwrite('rotated.jpg', img_rotated)
これは、あなた11.876
の角度を使用しての出力画像を与えるだろう:
このアプローチをしかし必要があります他の画像をさらに微調整する。
私は問題を説明するために行を置いていますが、実際にはこの行はイメージにありません。私はリングプルのリアルタイム角度計算をしたい、次に私はハフサークルをやってみたが、私は誤ったポジティブをたくさん持っている、私はリングのプルームのビートワイン円の勾配と角度を計算した。 あなたの答えをありがとう! –
私はHoughLinesが何を検出しているかを示すために青い線を引いた。私が使用したイメージにはあなたの行が含まれていませんでした(テストするために手で取り除かなければなりませんでした)。私は同意する、これは間違った一致を生成することができますCannyの「200」を変えることは役に立ちます。 –
ああ、OK!私はこのコードとの間違ったマッチを持っています。たとえば、 https://imgur.com/1gmpqXXこのアルゴリズムで解決策を行うことはできますか?他のフォームもあります。例えば、https://imgur.com/SNojsZ7 –
- 1. モーダルフォーム(角度)からユーザー入力を引き出す
- 2. 角度テンプレートリファレンス変数から値を引き出す
- 3. AngularDartの角度コンポーネントのAppレイアウトの引き出しエッジ
- 4. 角度指令のオプションパラメータに基づくデータの引き出し
- 5. Python - 回転角度からのOpenCVの透視変換
- 6. `pip install opencv-python`との取り引きは完全なopencvですか?
- 7. Object.observe引き出しとRxJSと角度2
- 8. 角度2 WebPACKの角度ルータ・ローダは、ヌル反応を引き起こす
- 9. OpenCV Python関数の引数を理解できません。
- 10. opencv + pythonを使ってさまざまな角度で顔を検出する方法
- 11. OpenCVのSobel演算子の大きさと角度のプロットヒストグラム
- 12. Python OpenCV顔検出
- 13. OpenCVのキャニーエッジ検出のPython
- 14. OpencvとPythonのパラメータの角括弧
- 15. opencv-pythonオブジェクトの検出
- 16. OpenCVでのバックグラウンドの差し引き
- 17. ウェブページの水平スクロールを引き起こす角度グリッドグリッド
- 18. OpenCVは動きをPythonで検出します
- 19. django(python-opencvを使用)で顔を検出できません。
- 20. Python OrderedDictから値を引き出す
- 21. opencv-pythonで星形を検出
- 22. OpenCV&Pythonでの瞳孔検出
- 23. OpenCV:カメラとピクセルの間の角度を計算する
- 24. Pythonで角度のあるアイテムをクリックできません
- 25. 角度2通貨のフィールドでfocousを呼び出すとき
- 26. 無限ループを引き起こす角度uiルータ
- 27. OpenCVからピクセルの速度ベクトルを抽出する方法calcOpticalFlowFarneback - Pythonバージョン
- 28. Python OpenCV Sliding Windowオブジェクト検出
- 29. 角度+ Pythonのポストストリングとjson
- 30. pythonのレーダーグラフ上のリング間の色
具体的な問題を明確にしたり、詳細を追加して必要なものを正確に強調してください。現在書かれているとおり、あなたが求めていることを正確に伝えるのは難しいです。この質問を明確にする方法については、How to Askページを参照してください。 –
私は質問を明確にするために写真を置いた。角度は黄色の線で、opencv pythonのプログラムでこの角度をカメラで検出したい。 –