Rumah  >  Artikel  >  pembangunan bahagian belakang  >  Bagaimana untuk memutar imej dan mengekalkan padding menggunakan perpustakaan PHP dan OpenCV

Bagaimana untuk memutar imej dan mengekalkan padding menggunakan perpustakaan PHP dan OpenCV

WBOY
WBOYasal
2023-07-17 19:04:37740semak imbas

Cara melakukan putaran imej dan terus berlapik menggunakan perpustakaan PHP dan OpenCV

Abstrak:
Dalam pemprosesan imej, putaran imej adalah operasi biasa. Artikel ini akan memperkenalkan cara menggunakan perpustakaan PHP dan OpenCV untuk mencapai putaran imej dan mengekalkan pelapik. Kami akan menggunakan perpustakaan sambungan pemprosesan imej PHP GD dan perpustakaan sambungan PHP OpenCV untuk melaksanakan fungsi ini. Artikel tersebut akan memberikan contoh kod terperinci untuk membantu pembaca memahami dan mengamalkan.

  1. Pengenalan
    Pemprosesan imej digunakan secara meluas dalam penglihatan komputer, pengecaman imej dan bidang lain. Antaranya, putaran imej merupakan salah satu operasi asas pemprosesan imej. Walau bagaimanapun, putaran imej konvensional sering menyebabkan herotan dan pemangkasan imej. Untuk menyelesaikan masalah ini, kita boleh menggunakan kaedah memutar imej dan mengekalkan pengisian, supaya imej yang diputar masih kekal utuh.
  2. Persediaan
    Sebelum kita mula, kita perlu memastikan bahawa kita telah memasang pustaka sambungan pemprosesan imej PHP GD dan perpustakaan sambungan PHP OpenCV. Jika tidak dipasang, anda boleh memasangnya mengikut arahan berikut:

    sudo apt-get install php7.4-gd
    sudo apt-get install php7.4-opencv
  3. Contoh kod putaran imej
    Berikut ialah contoh kod yang menggunakan perpustakaan PHP dan OpenCV untuk melaksanakan putaran imej dan terus mengisi:
<?php
// 加载OpenCV库
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');
?>

Kod di atas akan dinamakan input.jpg的源图像中加载图像,并创建一个新的图像对象,大小为旋转后的图像大小。算法将图像旋转90度,并使用白色进行填补。最后,将旋转后的图像保存为output.jpg.

  1. Kesimpulan
    Artikel ini memperkenalkan cara menggunakan perpustakaan PHP dan OpenCV untuk mencapai putaran imej dan mengekalkan pelapik. Kita boleh melaksanakan fungsi ini dengan mudah dengan menggunakan perpustakaan sambungan pemprosesan imej PHP GD dan perpustakaan sambungan PHP OpenCV. Artikel ini menyediakan contoh kod terperinci, pembaca boleh berlatih dan meneroka lebih lanjut berdasarkan kod tersebut.

Melalui kajian dan amalan artikel ini, pembaca akan dapat lebih memahami dan menggunakan perpustakaan PHP dan OpenCV untuk memutar imej dan mengekalkan kaedah pelapik. Saya berharap artikel ini dapat membantu pembaca dalam kajian dan aplikasi dalam bidang pemprosesan imej.

Atas ialah kandungan terperinci Bagaimana untuk memutar imej dan mengekalkan padding menggunakan perpustakaan PHP dan OpenCV. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!

Kenyataan:
Kandungan artikel ini disumbangkan secara sukarela oleh netizen, dan hak cipta adalah milik pengarang asal. Laman web ini tidak memikul tanggungjawab undang-undang yang sepadan. Jika anda menemui sebarang kandungan yang disyaki plagiarisme atau pelanggaran, sila hubungi admin@php.cn