トップページ > ユーザサポート > FAQ
Q4 : 複数Blobの重心を求めたいです。
リージョンの連結を行い、連結したリージョンの重心を取得することで求めることが可能です。リージョンのOr演算を使用してリージョン間の OR 演算を行います。FVCL::Region::Operation::Or(FVCLの場合) FVIL.Region.Operation.Or(FVILの場合) 上記で得られた連結リージョンに対して リージョンの重心を取得してください。FVCL::Data::CFvRegion::GetCenter(FVCLの場合)FVIL.Data.CFviRegion.Center(FVILの場合)---------------------------------------------------------対象Blobが多く、連結に処理時間がかかる場合は下記の計算式でも求めることが可能です。blobの面積: BiSblobのX一次モーメント: BiM01blobのY一次モーメント: BiM10重心: (Gx,Gy)Gx = (ΣBiM01) / (ΣBiS)Gx = (ΣBiM10) / (ΣBiS)(例)B1, B2, B3 の3つのブローブの重心の場合下記の式で求めることができます。Gx = (B1M01 + B2M01 + B3M01) / (B1S + B2S + B3S)Gy = (B1M10 + B2M10 + B3M10) / (B1S + B2S + B3S)