Bagaimana untuk menggunakan perpustakaan PHP dan OpenCV untuk penskalaan dan pemangkasan imej?
Dalam bidang pemprosesan imej, penskalaan dan pemangkasan imej adalah operasi yang sangat biasa. Dengan mengezum, kita boleh melaraskan saiz imej dengan memotong, kita boleh menangkap kawasan yang menarik. Dalam PHP, kita boleh menggunakan perpustakaan OpenCV untuk melaksanakan fungsi ini.
Pertama, kami perlu memastikan perpustakaan OpenCV dipasang pada pelayan kami. Untuk proses memasang perpustakaan OpenCV, sila rujuk dokumentasi rasmi OpenCV.
Seterusnya, kita perlu memasang sambungan OpenCV untuk PHP. Sambungan OpenCV untuk PHP boleh didapati dalam repositori GitHub https://github.com/php-opencv/php-opencv. Ikut arahan dalam repositori untuk memasangnya.
Selepas pemasangan selesai, kami boleh menggunakan perpustakaan PHP dan OpenCV untuk penskalaan dan pemangkasan imej dengan cara berikut:
Sangat mudah untuk menggunakan perpustakaan OpenCV untuk penskalaan imej. Berikut ialah contoh kod:
<?php $image = cvimread('input.jpg'); // 缩放图像尺寸为新尺寸 $newWidth = 800; $newHeight = 600; $resizedImage = cvesize($image, new cvSize($newWidth, $newHeight)); // 保存缩放后的图像 cvimwrite('resized.jpg', $resizedImage); ?>
Dalam contoh ini, kita mula-mula membaca imej input menggunakan fungsi cvimread dan menyimpannya dalam pembolehubah $image. Kami kemudiannya menentukan dimensi imej baharu dan menskalakan imej input menggunakan fungsi cvesize. Akhir sekali, gunakan fungsi cvimwrite untuk menyimpan imej berskala ke fail resized.jpg.
Pemotongan imej juga sangat mudah melalui perpustakaan OpenCV. Berikut ialah contoh kod:
<?php $image = cvimread('input.jpg'); $x = 100; $y = 100; $width = 500; $height = 400; $croppedImage = cvRect($x, $y, $width, $height); // 保存裁剪后的图像 cvimwrite('cropped.jpg', $croppedImage); ?>
Dalam contoh ini, kita mula-mula membaca imej input menggunakan fungsi cvimread dan menyimpannya dalam pembolehubah $image. Kami kemudiannya menentukan koordinat sudut kiri atas kawasan tanaman ($x dan $y), dan lebar dan tinggi kawasan tanaman ($lebar dan $tinggi). Seterusnya, gunakan fungsi cvRect untuk mencipta objek segi empat tepat yang mewakili kawasan keratan. Akhir sekali, gunakan fungsi cvimwrite untuk menyimpan imej yang dipangkas ke fail crop.jpg.
Melalui contoh kod di atas, anda boleh melaksanakan fungsi penskalaan dan pemangkasan imej dengan mudah menggunakan perpustakaan OpenCV dalam PHP. Sila laraskan parameter dalam kod dan cara memanggil fungsi mengikut keperluan sebenar. Saya doakan anda berjaya dalam usaha pemprosesan imej anda!
Atas ialah kandungan terperinci Bagaimana untuk menggunakan perpustakaan PHP dan OpenCV untuk penskalaan dan pemangkasan imej?. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!