HALCON楽しいマシンビジョンナンバープレート認識 - スーパーマンのビジュアル羅チャオ

Iスーパーマンビジョン-羅チャオ:みなさん、こんにちは、直接乾燥品に。私はここで私は徐々にお見せするために私の最初のブログを開始します、私の全体のルーチンの視覚的な学習は、世界の哲学的観点から示すことである思考、哲学や技術から新しい視点を理解する必要があります。まず、我々はマシンビジョンシステムの完全な理解を持っている必要があり、完全なマシンビジョンシステムは、光源、撮像システム、撮像システム(CCD / CMOS)、AD変換システム、画像処理モジュールと判定制御系で構成されています。- 「前処理- 」画像セグメンテーション- 「を識別するための特徴抽出および表示通信獲得:前記画像処理モジュールと、決定プロセスは、4つのステップに分割されています。HALCONプラットフォームによって、私たちの視覚処理。対照的に、4つの一般的な目的(1階調変化を目指して前処理は、例えばscale_image、emaphsizeとしてグレースケール形態学的演算子を対応する)に対応する平均値フィルタ(mean_image始まる、equ_hiso_image.2雑音除去を、gray_メディアンフィルタリング(median_image)、ガウス(gauss_image).3。幾何学変換(アフィン変換、射影変換。極座標変換)4.カットアウト(手描き又はブロブ近似))、その後、画像分割は、本明細書に一般的に指します(多くの場合、3 shape_trans、交差点、違い、などとの二値化三人の兄弟、および形態学的特徴選択、)関節の三人の兄弟。それから私はHALCONプラットフォームで任意の角度でナンバープレートを取ったが、迅速な同定に基づく、ここに注意を払う顧客に届けた場合、識別することであるUIとビジネスロジックのプログラミングを追加する必要があります。あなたが他のプラットフォームを使用する場合は、ルーチンのように、解決するために思考するプロジェクトの魂であることを覚えている、コード自体は静的な客観的、です。下部プレート上の識別コードは、ランダムに取ることができます。あなたは、この技術の統合を考えた場合、私の哲学と興味を持って友人がダウンロードして歓迎されているhttp://pan.baidu.com/share/link?shareid=3266393619&uk=2369503810を私はまた、QQのグループに577 303 448を入力するか、このアイデアのより実証されたマシンビジョンプロジェクトのための私の個人的なqq1269131923戦闘を追加することができます。* 1画像コレクション 



 
read_image(画像、 'C:/ユーザー/管理者/デスクトップ/ プレート.JPG') 
dev_close_window() 
dev_open_window(0、0、512、512、 'ブラック'、WindowHandle) 
dev_display(画像)は 
、プレートの* 2前のポジショニング、通常、ブロブ画素ブロブに配置される2つの位置決めがあり、一致テンプレートが配置され、正の幾何学的変換 
 decompose3(画像、赤、緑、青) 
 trans_from_rgb(赤、緑、青、色相、彩度,,強度、「HSV 「) 
*その色チャネル変換注ここで、画像セグメンテーション、すなわち、ナンバープレートの位置、より一般的な単純なBLOBの便宜のためであり、実際のプロジェクトでは、光などの影響を考慮する必要が細かく最適化するように調整されている 
 *値化こちらブロブナンバープレートの場所の
 
 しきい値(彩度、地域、182、255) 
私はここにある*注開く操作は、この演算子はつまり、私は何のトリック、トリックを持っていた哲学は私の他の側の移動に依存し、状況に応じて脳からフラッシュされノイズが小さい点を表示することがあるため、これ直ちに開作動を考える 
*画素閉動作と拡張を増加させる、直ちに開動作と腐食考えるピクセルを取り除く注意。あなたが見ることができる具体的な違いは、私が出て設定されたリンクを、作られました。
 
opening_rectangle1(地域、RegionOpening、6,6) 
*以下のアイデアは、全領域を得るために必要なので、shape_transを考える、それが傾斜しrectangle2を有する矩形であるからである 
shape_trans(RegionOpening、RegionTrans、「rectangle2」) 
次の模倣を容易にするために、角度及び領域の中心を求めます*正のショット変換 
orientation_region(RegionTrans、ファイ) 
area_center(RegionTrans、エリア、行、列) 
*回転行列のアフィン変換を解く開始、ここで注意すべき点は、180度または0度を行くことです、あなたが解決する角度で極軸に注意を払う必要があります方向、具体的には、ビデオリンクを参照することができる 
(行、列、ピピ、行、列、RAD(180)、HomMat2D)vector_angle_to_rigidを 
*と、この回転変換を行うには、画像領域、およびマット、さらに画像分割 
affine_trans_image(画像、ImageAffinTransを、HomMat2D、 '定数'、 'falseに') 
affine_trans_region(RegionTrans、RegionAffineTrans、HomMat2D、 'nearest_neighbor') 
reduce_domain(ImageAffinTrans、RegionAffineTrans、ImageReduced) 
*画像分割。以下の3が実施され、それは、文字切り出しで、興味をセグメント化ポジショニングと幾何学をやっで上記のすべての分野、それを変換し、このアイデアルーチンに注意を払います 
rgb1_to_gray(ImageReduced、GrayImageは) 
*私たちはHALCON戻って自分のキャラクターなので、それは画像強度を反転注意、およびフォントがHALCONは黒と白で来る 

(GrayImage、ImageInvert)invert_image 
、しきい値(GrayImage、Regions1 92、135) 
三人の兄弟ジョイント使用を開始*が満たされた容器は、容器の形状であり、それ自体は目に見えない、水のように、適応可能である 
opening_rectangle1(Regions1、RegionOpening1、3,3) 
*注意が通信することができる異なるドメインに切断されなければなりませんHALCON内部メカニズムである特徴選択、で、規定は客観的ではありません。つまり、それが呼び出す必要があります接続 
(RegionOpening1、ConnectedRegions)接続を 
select_shape(ConnectedRegions、SelectedRegions、「エリア」、「と」、546.74、2000年) 
も可能です*文字を抽出し、注意ここで私は中国語の文字を認識するために、中国語の文字を認識しません。 、あなたがビデオリンクを参照することができます 
観察容易な同定を注文した後、*文字を人々が左から右に慣れているので、
 
sort_region(SelectedRegions、SortedRegions、「first_point」、「真の」、「列」) 
* 4識別表示、このような認識に注意を払いますHALCON自身のキャラクターは、非阻止帯域NoRej表現ながら、識別は重要ではありません 
read_ocr_class_mlp(「Industrial_0-9A-Z_NoRej.omc」、OCRHandle) 
*注OCRルーチンは、一般的に複数の領域を用いて同定することができ、領域識別は、上記の作業はエリア得ることであることに注意し、単一であってもよい 
、do_ocr_multi_class_mlp(SortedRegions、ImageInvert、OCRHandleをクラス、自信) 
dev_display(画像) 
disp_message(WindowHandle、クラス、 '画像'、371、264、 '赤'、 '偽の')

  • 画像:.JPGのナンバープレート

おすすめ

転載: blog.csdn.net/qingzhuyuxian/article/details/92799911
おすすめ