Kaedah ambang imej menggunakan perpustakaan PHP dan OpenCV
Pemprosesan imej merupakan salah satu hala tuju penyelidikan penting dalam bidang penglihatan komputer, antaranya ambang imej adalah kaedah yang biasa digunakan. Melalui ambang imej, kita boleh menukar nilai piksel dalam imej ke dalam bentuk binari untuk memudahkan pembahagian imej seterusnya, pengesanan tepi dan operasi lain. Artikel ini akan memperkenalkan cara menggunakan perpustakaan PHP dan OpenCV untuk ambang imej dan memberikan contoh kod.
Pertama, kita perlu menyediakan pemasangan dan konfigurasi perpustakaan OpenCV. Untuk menggunakan perpustakaan OpenCV dalam PHP, anda boleh menggunakan pakej sambungan PHP php-opencv
. Kami boleh memasang pakej sambungan php-opencv
melalui langkah berikut. php-opencv
。我们可以通过以下的步骤来安装php-opencv
扩展包。
步骤一:安装OpenCV库
在终端中执行以下的命令来安装OpenCV库:
sudo apt-get update sudo apt-get install libopencv-dev
步骤二:安装php-opencv扩展包
在终端中执行以下的命令来安装php-opencv扩展包:
sudo apt-add-repository ppa:ondrej/php sudo apt-get update sudo apt-get install php7.4-opencv
接下来,我们可以利用PHP和OpenCV库来对图像进行阈值化处理。以下是一个示例代码:
<?php $srcFilePath = 'input.jpg'; $outputFilePath = 'output.jpg'; // 读取图像 $srcImage = cvimread($srcFilePath, cvIMREAD_GRAYSCALE); // 应用阈值化处理 $binaryImage = new OpenCVBinaryImage(); $binaryImage->adaptiveThreshold($srcImage, 255, cvADAPTIVE_THRESH_MEAN_C, cvTHRESH_BINARY, 11, 2); // 输出图像 cvimwrite($outputFilePath, $binaryImage); // 释放资源 unset($srcImage); unset($binaryImage); ?>
上述代码中,首先通过cvimread
函数读取了输入图像,并使用cvIMREAD_GRAYSCALE
参数将图像转化为灰度图像。
接下来,我们创建了一个BinaryImage
对象,并使用adaptiveThreshold
函数对灰度图像进行阈值化处理。该函数的参数依次为:输入图像、最大阈值、自适应阈值化方法、二值化方法、块大小、常量值。
最后,我们使用cvimwrite
函数将阈值化后的图像写入输出文件中。
需要注意的是,在使用OpenCV库的函数时,需要在函数前面加上cv
或者OpenCV
rrreee
Langkah 2: Pasang pakej pengembangan php-opencv🎜🎜 Jalankan arahan berikut dalam terminal untuk memasang php -pakej pengembangan opencv :🎜rrreee🎜 Seterusnya, kita boleh menggunakan perpustakaan PHP dan OpenCV untuk ambang imej. Berikut ialah contoh kod: 🎜rrreee🎜Dalam kod di atas, imej input dibaca terlebih dahulu melalui fungsicvimread
dan imej ditukar kepada imej skala kelabu menggunakan cvIMREAD_GRAYSCALE kod> parameter. 🎜🎜Seterusnya, kami mencipta objek <code>BinaryImage
dan menggunakan fungsi adaptiveThreshold
untuk mengehadkan imej skala kelabu. Parameter fungsi ini ialah: imej input, ambang maksimum, kaedah ambang penyesuaian, kaedah perduaan, saiz blok dan nilai malar. 🎜🎜Akhir sekali, kami menggunakan fungsi cvimwrite
untuk menulis imej ambang pada fail output. 🎜🎜Perlu diambil perhatian bahawa apabila menggunakan fungsi perpustakaan OpenCV, anda perlu menambah awalan cv
atau OpenCV
di hadapan fungsi. 🎜🎜Dengan kod di atas, kita boleh mengeluarkan imej binari yang diperolehi dengan ambang imej ke fail. Sudah tentu, kita boleh melakukan operasi morfologi, pengekstrakan kontur dan pemprosesan lain pada imej binari untuk mencapai lebih banyak analisis imej dan fungsi pengecaman. 🎜🎜Ringkasnya, kaedah menggunakan perpustakaan PHP dan OpenCV untuk ambang imej adalah sangat mudah Anda hanya perlu memasang perpustakaan yang sepadan dan memanggil fungsi yang sepadan. Harap artikel ini membantu anda! 🎜Atas ialah kandungan terperinci Bagaimana untuk melaksanakan ambang imej menggunakan perpustakaan PHP dan OpenCV. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!