- メインページ
- モジュール
- ネームスペース
- データ構造
- ファイル

関数
メッシュ抽出

## 関数
template<class T , class Allocator >
bool | mist::extract_mesh (array2< T, Allocator > &chart, matrix< vector2< double > > &grid, typename array2< T, Allocator >::difference_type row, typename array2< T, Allocator >::difference_type col, double threshold_for_circular_ratio=0.4)
| 円を格子状に並べた画像から，各点を抽出しメッシュ上の点と対応付ける

## 説明

次のヘッダをインクルードする
#include <mist/utility/mesh.h>

## 関数

template<class T , class Allocator >

bool mist::extract_mesh | ( | array2< T, Allocator > & | chart,
|  | matrix< vector2< double > > & | grid,
|  | typename array2< T, Allocator >::difference_type | row,
|  | typename array2< T, Allocator >::difference_type | col,
|  | double | threshold_for_circular_ratio = `0.4`
| ) |  |

円を格子状に並べた画像から，各点を抽出しメッシュ上の点と対応付ける

注意
  入力画像はあらかじめ，しきい値処理を行っておく必要がある．

グリッドの点は左上を原点とし，メッシュの基準ラインを定める点列を配置する． 点列のサンプルは，mist/utility/mesh.ai を参考に作成してください．

出力されるメッシュの座標のうち，対応する点が見つからないものには (-1,-1) を出力する．

引数

  [in] | chart | … 入力画像（メッシュが映っている画像）
  [in,out] | grid | … 撮影した画像に含まれるメッシュの点数で初期化された配列（画像に移っていない点も含めた総数）を入力とし，画像中の座標が結果として出力される
  [in] | row | … メッシュの基準ラインを定める点列の中心を表す行方向の位置（０から数えた時の位置）
  [in] | col | … メッシュの基準ラインを定める点列の中心を表す列方向の位置（０から数えた時の位置）
  [in] | threshold_for_circular_ratio | … メッシュの候補を絞り込むための円形度のしきい値（これより小さい値のものは除外）

戻り値
  メッシュの抽出に成功したかどうか

基準となる中心点を見つける

参照先 mist::array< T, Allocator >::begin(), mist::convert(), mist::array2< T, Allocator >::height(), mist::labeling4(), mist::array< T, Allocator >::size(), と mist::array2< T, Allocator >::width().