php -v
如未安装,请使用以下命令进行安装:
sudo apt-get install php
sudo apt-get install php-opencv
<?php
// 加载图像
$image = cvimread("test.jpg");
// 转为灰度图
$gray = cvcvtColor($image, CV_BGR2GRAY);
// 边缘检测
$edges = cvCanny($gray, 50, 150);
// 显示结果
cvimshow("Edges", $edges);
cvwaitKey();
?>
在上述流程中,我们先将图像转为灰度格式,再利用cvCanny()函数执行边缘检测,阈值分别设置为50和150。最后通过cvimshow()展示处理结果。
<?php
// 加载图像
$image = cvimread("test.jpg");
// 转为灰度图
$gray = cvcvtColor($image, CV_BGR2GRAY);
// 边缘检测
$edges = cvCanny($gray, 50, 150);
// 转换为彩色图像
$color = cvcvtColor($edges, CV_GRAY2BGR);
// 查找轮廓
$contours = cvindContours($edges, cvCV_RETR_EXTERNAL, cvCV_CHAIN_APPROX_SIMPLE);
// 绘制轮廓
cvdrawContours($color, $contours, -1, [0, 255, 0], 2);
// 显示描边效果
cvimshow("Edges with Contours", $color);
cvwaitKey();
?>
此部分通过轮廓提取与绘制操作,对图像边缘进行了显著描边。通过将边缘图转换为彩色格式,并使用绿色描边线描绘每一个检测到的外轮廓,使图像结构更为清晰可视。
希望本文能帮助你掌握如何在PHP环境中利用OpenCV处理图像边缘问题,并为你的图像处理项目打下基础。持续学习与实验,将有助于进一步提升你的图像算法实现能力。