フォーカス エリアを使用して、サイズ変更、トリミング、画像の正しいアプローチを見つけるのに苦労しています。私の場合、フォーカス エリアは画像内で検出された顔であり、このエリアがトリミングされたバージョンで見えるようにする必要があります。
私は例えばによって与えられたフォーカスエリアを持っています。face_height、face_width、face_center_x、face_center_y。これらの値は、元の画像の寸法のパーセンテージです。
私がやりたいことは、egを取得することです。60x60 のサムネイル。通常のアプローチでは、画像の高さまたは幅が 60 ピクセルになるようにサイズを変更し、次のように中央から 60x60 をトリミングします。
mogrify -resize 60x -gravity 'Center' -crop 60x60 image.jpg
代わりに、特定の領域の周りに作物を集中させるには、どのようなアプローチを取ることができますか?
私はいくつかのパスを含むソリューションを考えています:
- 顔の領域が目的のサムネイルよりも大きい場合は、顔全体が 60x60 ピクセルで表示されるように画像のサイズを変更してから、トリミングします。
- 顔の領域が必要なサムネイルよりも小さい場合は、必要な親指が領域内に収まるまで、顔の領域をトリミングして「拡張」します。次に、トリミングします。これが元の画像の境界を超えないようにする必要があると思います。
よりスマートなアプローチはありますか?サンプルコードをいくつか作ってみてもらえますか?
ありがとう!