YOLOv5での学習画像のサイズについて
解決したいこと
YOLOv5で学習する際の入力画像のサイズについて質問です。
YOLOv5の学習画像のサイズはデフォルトで640×640ですが、これは仮に異なる画像、例えば1280×740のサイズを入力した際は勝手にそのサイズにリサイズされているのでしょうか。その場合は1280×740のサイズに合わせたアノテーションの座標はどうなるのでしょうか。1280×740の画像にアノテーションの座標を適用してからリサイズしていると認識してよいのでしょうか。
YOLOv5で学習する際の入力画像のサイズについて質問です。
YOLOv5の学習画像のサイズはデフォルトで640×640ですが、これは仮に異なる画像、例えば1280×740のサイズを入力した際は勝手にそのサイズにリサイズされているのでしょうか。その場合は1280×740のサイズに合わせたアノテーションの座標はどうなるのでしょうか。1280×740の画像にアノテーションの座標を適用してからリサイズしていると認識してよいのでしょうか。
YOLOv5では入力画像のサイズがデフォルトで640×640に設定されています。異なるサイズの画像(例えば1280×740)を入力した場合、YOLOv5は自動的にその画像をリサイズします。
具体的には、YOLOv5は以下の手順で画像を処理します1:
アスペクト比の維持: 画像の長辺を指定されたサイズ(デフォルトでは640)にリサイズします。この際、アスペクト比は維持されます。
パディング: リサイズ後の画像が正方形でない場合、短辺にパディング(通常はグレーのパディング)が追加され、最終的に640×640の正方形画像になります。
このプロセスにより、アノテーションの座標もリサイズされます。具体的には、元の画像サイズに基づいてアノテーションが適用され、その後リサイズとパディングが行われます。これにより、アノテーションの座標も適切にスケーリングされ、リサイズ後の画像に対応します。
例えば、1280×740の画像が640×370にリサイズされ、その後パディングが追加されて640×640の画像になる場合、アノテーションの座標も同様にスケーリングされ、パディングの影響を受けます。
このようにして、YOLOv5は異なるサイズの画像を統一された入力サイズに変換し、アノテーションの整合性を保ちながら学習を行います。