![](http://oshiete.xgoo.jp/images/v2/pc/qa/question_title.png?e8efa67)
開発言語は、アルゴリズムができてから最善のものを使いたいと思ってますが、現状はVisualC++です。
トイレットペーパーの芯や、キッチンペーパーの芯を平べったく伸ばした感じの紙媒体を、デジタルカメラで撮影した画像から、その芯のラインの本数、ライン1本毎の幅、ラインのエッジ出力、ライン以外の黒い要素(ゴミやノイズになる部分)・・・などを求めれるアルゴリズムを考案しています。
この際に、ラインを認識することが第1条件で、2値化したときにゴミとなる点の集合と、ライン要素になる点の集合を区別し、ラベリング処理でライン番号を付けれたら・・・っと考えてます。
ただ、困ったことにカメラや照明の制度が悪く、濃淡が激しい画像になってます。あと、左右に大きな余白(実際には黒色)ができたり、余白とライン要素の交点部分「余白(ト)ライン」みたいな箇所で、余白なのかラインなのか区別ができない状態です。
また、2値化した際に、
□□□□□■■■□□□□□□□□□
□□□□□□■■■□□□□□□□□
□□□□□□□■■■■■■□□□□
□□□□□□□□■■■□□■■□□
□□□□□□□□■■■□□□■■□
□□□□□□□□□■■■□□□□□
このようなゴミがくっついている場合や、ラインの途中が薄い部分が白と認識され、上のように分裂してしまったり・・・。
VC++6.0で、読み込んだビットマップの数値データをCSVに保存するところまで、できている状態です。(0~255の数字が出力されてます)
No.1ベストアンサー
- 回答日時:
Hough変換はご存じでしょうか?
Hough変換で直線成分を抽出して,長ければライン,短ければゴミ,ある程度長くて,同じ延長線上にあるなら同一のラインとして扱う,等すると良いのでは.
試すだけならC(C++)&OpenCVが楽です.
・OpenCV -Hough変換-
http://opencv.jp/sample/special_transforms.html
・OpenCV チュートリアル
http://chihara.naist.jp/opencv/?FrontPage
> ただ、困ったことにカメラや照明の制度が悪く、濃淡が激しい画像になってます。
> あと、左右に大きな余白(実際には黒色)ができたり、余白とライン要素の交点部分「余白(ト)ライン」みたいな箇所で、余白なのかラインなのか区別ができない状態です。
この辺はまた別問題の様な気がします.
まずは,機材の変更・環境の変更・撮影方法の変更・手動の前処理を入れる,などで解決すべきところではないでしょうか.
> 余白の黒色
古典的手法で,ブルーバックにしてみるとか?
まあ,大学の画像処理研究なのか,実際の既存工場のラインで使用するのとでは,このあたり違ってきてしまうとは思います.
(アルゴリズムの研究なら,本筋でない要素は事前排除すべきでしょうし,お仕事の実用ソフトならそうも言ってられないでしょうし...)
kirinoma様、ご回答ありがとうございます。
早速、WEBページを拝見して、理解してみようと思います。
>まあ,大学の画像処理研究なのか,実際の既存工場のラインで使用するのとでは・・・
どちらかと言えば後者の方で、もしかすると必要となるかもしれないので、早い段階で勉強だけしておこうと思ってやってます。
>この辺はまた別問題の様な気がします.
>まずは,機材の変更・環境の変更・撮影方法の変更・手動の前処理を入れる,などで解決すべきところではないでしょうか.
これを言ったら、「ソフトに不可能はない」と言い返されました・・・。ボタンを押したら結果が出る。
早い話、機械(撮影するカメラ等)が最低限の機能で動いても何とかなるソフトウェアを開発しなければいけないのが現状です。
ただ、ライン検知の前に、何か前処理はしてやる必要はありそうですね。。。微分ヒストグラムとか使うべきなんでしょうかね?
お探しのQ&Aが見つからない時は、教えて!gooで質問しましょう!
似たような質問が見つかりました
- HTML・CSS svgクリップパスの応用コーディング方法 2 2022/04/09 09:07
- LINE ラインと類似したサービスは? 4 2023/03/21 20:05
- 格安スマホ・SIMフリースマホ Wi-Fiなし環境でのライン使用について 4 2022/06/30 09:20
- カップル・彼氏・彼女 付き合ってすぐ冷めることある? 4 2022/08/20 14:23
- LINE ラインの疑似体験(?)が出来るサービスは? 3 2023/03/26 19:52
- カップル・彼氏・彼女 ドライな彼氏、本当に好かれてる? 1 2022/09/17 15:23
- カップル・彼氏・彼女 淡白な彼氏、冷めてるかわからない 2 2022/09/17 20:33
- Android(アンドロイド) simカードの無いスマホでラインはできるか? 中古スマホ(カメラ替わりに購入した画素数の大きい中古ス 9 2023/05/15 16:22
- その他(恋愛相談) 同期だから? 0 2022/04/05 22:15
- Instagram 彼女が自分へのラインを返すこともなくInstagramばっかり見てる時があります。オンライン表示が出 2 2023/07/10 14:59
関連するカテゴリからQ&Aを探す
おすすめ情報
デイリーランキングこのカテゴリの人気デイリーQ&Aランキング
-
C言語によるディジタル信号処理...
-
iCloudフォトライブラリ内の画...
-
Windows Media Playerを開くと...
-
じゃんけんゲーム(DXライブラ...
-
outp関数について
-
【VC++】MFC、C++/CLI(CLR)、...
-
【VBA】イベントログの取得
-
VB.NET とドットNET(.NET...
-
32768以上の乱数を作りたいので...
-
(C言語等で)既存ファイル群の属...
-
MFCとWIN32API
-
String^の^自体が何を意味して...
-
Dreamweaverのライブラリが反映...
-
C++ 標準ライブラリの実際の中...
-
オンラインゲームを作る道のり...
-
IPアドレス、サブネットマスク...
-
マウスのクリックを自動で
-
DirectX Graphics と OpenGLっ...
-
sleep関数
-
C# EXCELセルの入力規則設定に...
マンスリーランキングこのカテゴリの人気マンスリーQ&Aランキング
-
生年月日(yyyy/MM/dd) → 年齢...
-
色混ぜのアルゴリズム
-
OpenCVで寸法測定
-
姿勢センサでプロジェクタの台...
-
解像度と誤差について
-
C言語 極座標変換
-
角が丸部分を画像上から検出す...
-
画像の2値化について
-
直線と線分の交差判定について...
-
画像一致判定のアルゴリズム
-
点字認識システムを作成したい...
-
OpenCVで、画像の平均階調値よ...
-
VBを使った自作の逆FFT
-
Canny法に用いる閾値の決定法に...
-
魚眼画像について
-
線幅の測定
-
平滑化フィルタなどフィルタリ...
-
ラベリング方法の工夫をしたい...
-
C++/CLIで画像処理
-
画像をFFTした際のスペクトル分...
おすすめ情報