名称 | MIRS1404 画像処理 関数レファレンス一覧 |
---|---|
番号 | MIRS1404-SOFT-0002 |
版数 | 最終更新日 | 作成 | 変更点 | 承認 | 改訂記事 |
---|---|---|---|---|---|
A01 | 2014.12.16 | 石井建至 | 初版 | ||
A02 | 2015.01.30 | 石井建至 | ニ値化関数の訂正 | 第2版 |
関数名 | 内容 |
---|---|
baloon_main | この関数は怪盗機の画像処理を統括するmain関数、怪盗の移動方向推定する。 |
baloon_direct | カメラのキャプチャ、赤色検出、2値化、平滑化、円形検出の関数を統合した関数する。 |
get1_img | 1台目のカメラでキャプチャを行う。 |
get2_img | 2台目のカメラでキャプチャを行う。 |
cv_ColorExtraction | 赤色検出しその画像を2値化する。 |
blackandwhite | 画像の平滑化を行う。 |
HoughCircles | 円形を検出し、円の重心、半径を算出する。 |
baloon_way | 怪盗の移動方向の推定を行う。 |
baloon_cross | 怪盗がいるかどうかだけを2台のカメラを使って判断する。 主に十字路で4方向を見るために使う。 |
関数名 | baloon_main() |
---|---|
定義ファイル名 | baloon_main.c |
書式 | baloon_main(int *dis, int *way) |
機能 | 画像処理の全てを統括し、必要なデータのみを取り出してMIRSのmain関数に渡す。 |
引数 | int型のポインタ *disは2回目にキャプチャしたときの怪盗との距離を渡す。 int型のポインタ *wayは怪盗機の移動方向を表す数字を渡す。動かない場合"11"、右に移動した場合"1"、左に移動した場合"-1"を渡す。 |
戻り値 | int型を用いる。画像処理成功のとき"1"を返し、画像処理失敗のとき"0"を返す。 |
関数名 | baloon_direct() |
---|---|
定義ファイル名 | baloon_direct.c |
書式 | baloon_direct(int *x_cood, int *y_cood, int *L2) |
機能 | カメラのキャプチャ、赤色検出、2値化、平滑化、円形検出の関数を統合し、実行する。 |
引数 | int型のポインタ *x_coodは円の重心のx座標のデータを渡す。 int型のポインタ *y_coodは円の重心のy座標のデータを渡す。 int型のポインタ *L2は怪盗までの距離のデータを渡す。 |
戻り値 | int型を用いる。画像処理成功の場合"1"を返し、画像処理失敗のとき"-1"を返す。 |
関数名 | get1_img() |
---|---|
定義ファイル名 | get1_img.c |
書式 | get1_img("./img/出力ファイル名.jpg", IMG_X, IMG_Y) |
機能 | 1台目のカメラでキャプチャを行う。解像度を表す、IMG_Xは320、IMG_Yは240をdefine.hで定義してある。 |
引数 | char型のポインタを用い、キャプチャした画像のファイル名を決定する。 |
戻り値 | int型を用いる。キャプチャ成功の場合"0"を返し、キャプチャ失敗のとき"0"以外を返す。 |
関数名 | get2_img() |
---|---|
定義ファイル名 | get2_img.c |
書式 | get2_img("./img/出力ファイル名.jpg", IMG_X, IMG_Y) |
機能 | 2台目のカメラでキャプチャを行う。解像度を表す、IMG_Xは320、IMG_Yは240をdefine.hで定義してある。 |
引数 | char型のポインタを用い、キャプチャした画像のファイル名を決定する。 |
戻り値 | int型を用いる。キャプチャ成功の場合"0"を返し、キャプチャ失敗のとき"0"以外を返す。 |
関数名 | cv_ColorExtraction() |
---|---|
定義ファイル名 | cv_ColorExtraction.c |
書式 | cv_ColorExtraction(IplImage* src_img, IplImage* dst_img,int code,int ch1_lower, int ch1_upper,int ch2_lower, int ch2_upper,int ch3_lower, int ch3_upper) |
機能 | 赤色検出しその画像を2値化する。 |
引数 | src_imgは入力画像(8bit3ch) dst_imgは出力画像(8bit3ch) codeは色空間の指定(CV_BGR2HSV,CV_BGR2Labなど) ch1_lowerはch1のしきい値(小) ch1_upperはch1のしきい値(大) ch2_lowerはch2のしきい値(小) ch2_upperはch2のしきい値(大) ch3_lowerはch3のしきい値(小) ch3_upperはch3のしきい値(大) |
戻り値 | void型を用いる。(引数なし) |
関数名 | blackandwhite() |
---|---|
定義ファイル名 | blackandwhite.c |
書式 | blackandwhite(IplImage *src,IplImage *dst, int sflag) |
機能 | ガウシアンフィルタで平滑化を行う。 |
引数 | IplImage型のポインタ *srcは入力画像 IplImage型のポインタ *dstは出力画像 int型のsflagは"1"のとき平滑化画像を出力する。それ以外の数字は画像を出力しない。 |
戻り値 | void型を用いる。(引数なし) |
関数名 | HoughCircles() |
---|---|
定義ファイル名 | HoughCircles.c |
書式 | HoughCircles(IplImage* input_img, int *r, int *x, int *y) |
機能 | 円形の検出、検出した円の重心の計算、半径の算出を行う。 |
引数 | IplImage型のポインタ *inputは入力画像 int型のポインタ *rは検出した円の半径を表す。 int型のポインタ *xは検出した円の重心のx座標を表す。 int型のポインタ *yは検出した円の重心のy座標を表す。 |
戻り値 | void型を用いる。(引数なし) |
関数名 | baloon_way() |
---|---|
定義ファイル名 | baloon_way.c |
書式 | baloon_way(int one, int sec) |
機能 | 怪盗の移動方向の推定を行う。 |
引数 | int型のoneは1回目に検出した円の重心のx座標を表す。 int型のsecは2回目に検出した円の重心のx座標を表す。 |
戻り値 | int型を用いる。怪盗機が動かない場合"11"、右に移動した場合"1"、左に移動した場合"-1"を渡す。 2台目のカメラの場合は"22"、"2"、"-2"を返すようにする。 |
関数名 | baloon_cross() |
---|---|
定義ファイル名 | baloon_cross.c |
書式 | baloon_cross() |
機能 | 怪盗がいるかどうかだけを2台のカメラを使って判断する。 |
引数 | 引数なし |
戻り値 | int型を用いる。カメラ1で怪盗を発見したとき"1"を返し、カメラ2で怪盗を発見したとき"2"を返し、両方のカメラで怪盗が発見できなかったとき"0"を返す。 |