私のアプリケーションでは、私はuiimageの境界を検出したいと思います。私は花のイメージを持っています、(泥棒、粘着性の球根など)のような多くの部分を単一のイメージとして持っています。私が触れているなら、特定の泥棒はその特定の泥棒の境界値を見つけ、値を返します。uiimageの境界を検出する方法
これについてはわかりません。お手数ですがお手数ですが、
私のアプリケーションでは、私はuiimageの境界を検出したいと思います。私は花のイメージを持っています、(泥棒、粘着性の球根など)のような多くの部分を単一のイメージとして持っています。私が触れているなら、特定の泥棒はその特定の泥棒の境界値を見つけ、値を返します。uiimageの境界を検出する方法
これについてはわかりません。お手数ですがお手数ですが、
edge detecionアルゴリズムを実装できます。しかし、画像処理の経験がなければ、それは大きな頭痛になると思います。
イメージを事前に持っていれば、イメージをマスクの構成として分離し、対応するマスクのタッチを検出することができます。アイデアは、イメージの各部分に対応するビットマップマスクがあることです。タッチを受け取ると、すべてのマスクをチェックして、タッチの場所に黒のピクセルがあるかどうかを確認します。これはクォーツの厚いテクニックですが、私はエッジ検出よりもはるかに親しみやすいと思います。 relevant quartz documentationをチェックしてください。
私はあなたがUIImageViewをサブクラス化し、toucheventと位置を検出することでこれを行うことができると思います。
- (void)touchesBegan:(NSSet *)touches withEvent:(UIEvent *)event {
UITouch *touch = [touches anyObject];
CGPoint position = [touch locationInView:self];
}
私はこれを試しましたが、これはあなたの問題を解決するようです。
"Flood Fill Algorithm"を使用できます。
タッチポイントを取得するだけではこの回答には不十分です。
すべてをピクセル単位で分割する必要があります。さらにそれを使用してください。
UIImageViewに画像を配置していますか?まさにバウンドリーの意味は?フレーム? – jithinroy
@xCode:はい、私はuiimageview.boundaryの意味でイメージを持っています。イメージ(花)のようなものです。 – kanmani