PHP および OpenCV ライブラリを使用して画像を回転し、パディングを維持する方法
要約:
画像処理では、画像の回転は一般的な操作です。この記事では、PHP および OpenCV ライブラリを使用して画像の回転を実現し、パディングを維持する方法を紹介します。この機能の実装には、PHPの画像処理拡張ライブラリGDとOpenCVのPHP拡張ライブラリを利用します。この記事では、読者が理解して実践できるよう、詳細なコード例を提供します。
- はじめに
画像処理は、コンピュータ ビジョン、画像認識などの分野で広く使用されています。その中でも画像の回転は画像処理の基本操作の一つです。しかし、従来の画像回転では画像の歪みやトリミングが発生することがよくあります。この問題を解決するには、画像を回転してパディングを保持し、回転した画像がそのまま残る方法を使用できます。
-
準備
始める前に、PHP 画像処理拡張ライブラリ GD と OpenCV PHP 拡張ライブラリがインストールされていることを確認する必要があります。インストールされていない場合は、次のコマンドに従ってインストールできます:
1 2 | sudo apt-get install php7.4-gd
sudo apt-get install php7.4-opencv
|
ログイン後にコピー
- 画像回転コードの例
これは、PHP と OpenCV ライブラリを使用して画像回転を実装し、塗りつぶしを続けるサンプル コードです:
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 | <?php
if (! extension_loaded ( 'opencv' ))
{
dl( 'opencv.' . PHP_SHLIB_SUFFIX);
}
$srcImage = imagecreatefromjpeg( 'input.jpg' );
$srcWidth = imagesx( $srcImage );
$srcHeight = imagesy( $srcImage );
$newWidth = $srcHeight ;
$newHeight = $srcWidth ;
$dstImage = imagecreatetruecolor( $newWidth , $newHeight );
$angle = 90;
$bgColor = imagecolorallocate( $dstImage , 255, 255, 255);
$dstImage = imagerotate( $srcImage , $angle , $bgColor );
imagejpeg( $dstImage , 'output.jpg' );
?>
|
ログイン後にコピー
上記のコードは、input.jpg
という名前のソース画像から画像を読み込み、回転された画像のサイズで新しい画像オブジェクトを作成します。このアルゴリズムは画像を 90 度回転し、白で塗りつぶします。最後に、回転した画像を output.jpg
として保存します。
- 結論
この記事では、PHP および OpenCV ライブラリを使用して画像の回転を実現し、パディングを維持する方法を紹介します。この機能は、PHPの画像処理拡張ライブラリGDとOpenCVのPHP拡張ライブラリを利用することで簡単に実装できます。この記事では詳細なコード例が提供されており、読者はコードに基づいて練習し、さらに詳しく調べることができます。
この記事の学習と実践を通じて、読者は PHP および OpenCV ライブラリをより深く理解し、適用して画像を回転し、塗りつぶし方法を維持できるようになります。この記事が読者の画像処理分野の研究と応用に役立つことを願っています。
以上がPHP および OpenCV ライブラリを使用して画像を回転し、パディングを維持する方法の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。