基于OpenCV的PHP图像人脸识别技术_PHP
openCV是一个开源的用C/C++开发的计算机图形图像库,非常强大,研究资料很齐全。本文重点是介绍如何使用php来调用其中的局部的功能。人脸侦查技术只是openCV一个应用分支。
1.安装
从源代码编译成一个动态的so文件。
1.1.安装 OpenCV (OpenCV 1.0.0)
下载地址:http://sourceforge.net/project/showfiles.php?group_id=22870&package_id=16948
#tar xvzf OpenCV-1.0.0.tar.gz
#cd opencv-1.0.0
#./configure
#make
#make install
#make check (检查是否安装全部正确)
提示: 不要指定安装路径,否则后面编译facedetect会找不到OpenCV的路径。
1.2 安装facedetect
下载地址http://www.xarg.org/download/facedetect-1.0.0.tar.gz
#tar xzvf facedetect-1.0.0.tar.gz
#cd facedetect-1.0.0
#phpize && ./configure && make && make install
编译完之后会提示facedetect.so 文件所在的位置。
最后确认在php.ini加入
extension=facedetect.so,重启apache.
2.函数使用
在phpinfo()里检查是否有facedetect这个模块。
从openCV源代码/data/haarcascades/里头取出所有xml文件放在php的执行目录下
//检查有多少个脸型
var_dump(face_count(‘party.jpeg', haarcascade_frontalface_alt.xml'));
//返回脸型在图片中的位置参数,多个则返回数组
$arr = face_detect(‘party.jpeg', haarcascade_frontalface_alt2.xml');
print_r($arr);
3.应用
结合imagick可以将图片做一下应用。因为 face_detect只返回一个矩形参数,包含x,y坐标和w,h长宽参数。下面是我的一个应用demo
复制代码 代码如下:
if($_FILES){
$img = $_FILES['pic']['tmp_name'];
$arr = face_detect($img, ‘haarcascade_frontalface_alt2.xml');
//$arr1 = face_detect($img, 'haarcascade_frontalface_alt_tree.xml');
if(is_array($arr1)) $all =array_merge($arr,$arr1);
else $all = $arr;
$im = new Imagick($img);
//$draw =new ImagickDraw();
//$borderColor = new ImagickPixel('red');
//$draw->setFillAlpha(0.0);
//$draw->setStrokeColor ($borderColor);
//$draw->setStrokeWidth (1);
if(is_array($all)){
foreach ($all as $v){
$im_cl = $im->clone();
$im_cl->cropImage($v['w'],$v['h'],$v['x'],$v['y']);
$im_cl->swirlImage(60);
$im->compositeImage( $im_cl, Imagick::COMPOSITE_OVER , $v['x'], $v['y'] );
//$draw->rectangle($v['x'],$v['y'],$v['x']+$v['w'],$v['y']+$v['h']);
//$im->drawimage($draw);
}
}
header( “Content-Type: image/png” );
echo $im;
}else{
?>
}
?>
参考资料:
http://www.xarg.org/2008/07/face-detection-with-php/
http://www.opencv.org.cn/index.php/首页
http://www.cs.iit.edu/~agam/cs512/lect-notes/opencv-intro/index.html

ホットAIツール

Undresser.AI Undress
リアルなヌード写真を作成する AI 搭載アプリ

AI Clothes Remover
写真から衣服を削除するオンライン AI ツール。

Undress AI Tool
脱衣画像を無料で

Clothoff.io
AI衣類リムーバー

AI Hentai Generator
AIヘンタイを無料で生成します。

人気の記事

ホットツール

メモ帳++7.3.1
使いやすく無料のコードエディター

SublimeText3 中国語版
中国語版、とても使いやすい

ゼンドスタジオ 13.0.1
強力な PHP 統合開発環境

ドリームウィーバー CS6
ビジュアル Web 開発ツール

SublimeText3 Mac版
神レベルのコード編集ソフト(SublimeText3)

ホットトピック









C++ で顔認識と顔検出を行うにはどうすればよいですか?はじめに: 顔認識と顔検出は、コンピュータ ビジョンの分野における重要な研究方向であり、画像処理、セキュリティ監視などの分野で広く使用されています。この記事では、顔認識と顔検出に C++ 言語を使用する方法と、対応するコード例を紹介します。 1. 顔検出 顔検出とは、特定の画像内で顔を見つけて識別するプロセスを指します。 OpenCV は、顔検出に関連する機能を提供する人気のあるコンピューター ビジョン ライブラリです。以下は単純な人です

pip コマンドを使用すると、特定のコード サンプルが必要な OpenCV チュートリアルを簡単にインストールできます。OpenCV (OpenSource Computer Vision Library) は、オープン ソースのコンピュータ ビジョン ライブラリです。これには、開発者がイメージを迅速に構築するのに役立つ多数のコンピュータ ビジョン アルゴリズムと関数が含まれていますおよびビデオ処理関連のアプリケーション。 OpenCV を使用する前に、まず OpenCV をインストールする必要があります。幸いなことに、Python にはサードパーティのライブラリを管理するための強力なツール pip が用意されています。

OpenCV は、コンピューター ビジョンおよび画像処理用のオープン ソース ライブラリであり、機械学習、画像認識、ビデオ処理などの分野で広く使用されています。 OpenCV を使用して開発する場合、プログラムのデバッグと実行を改善するために、多くの開発者は強力な Python 統合開発環境である PyCharm の使用を選択します。この記事では、PyCharm ユーザーに OpenCV のインストール チュートリアルと具体的なコード例を提供します。ステップ 1: Python をインストールする まず、Python がインストールされていることを確認します。

PHP 学習メモ: 顔認識と画像処理 はじめに: 人工知能技術の発展に伴い、顔認識と画像処理が話題になっています。実際のアプリケーションでは、顔認識と画像処理は主にセキュリティ監視、顔ロック解除、カード比較などに使用されます。一般的に使用されるサーバー側スクリプト言語として、PHP を使用して顔認識や画像処理に関連する機能を実装することもできます。この記事では、具体的なコード例を使用して、PHP での顔認識と画像処理について説明します。 1. PHP における顔認識 顔認識は

インテリジェントなサービス ソフトウェアとして、DingTalk は学習や仕事において重要な役割を果たすだけでなく、その強力な機能を通じてユーザーの効率を向上させ、問題を解決することにも尽力しています。技術の継続的な進歩により、顔認識技術は徐々に私たちの日常生活や仕事に浸透してきました。それでは、DingTalk アプリを使用して顔認識入力を行う方法を以下に編集者が詳しく紹介します。さらに詳しく知りたいユーザーは、この記事の写真とテキストを参照してください。 DingTalk で顔を記録するにはどうすればよいですか?携帯電話で DingTalk ソフトウェアを開いた後、下部にある [ワークベンチ] をクリックし、[出席と時計] を見つけてクリックして開きます。 2. 次に、出席ページの右下の「設定」をクリックして入力し、設定ページの「私の設定」をクリックして切り替えます。

Golang を使用して写真上で顔認識と顔融合を実行する方法 顔認識と顔融合はコンピュータ ビジョンの分野では一般的なタスクであり、効率的で強力なプログラミング言語である Golang はこれらのタスクでも重要な役割を果たします。この記事では、Golang を使用して画像上で顔認識と顔融合を実行する方法を紹介し、関連するコード例を示します。 1. 顔認識 顔認識とは、画像またはビデオ内の顔の特徴を通じて、既知の顔と顔を照合または識別する技術を指します。 Golang で

1. 寝る前に Siri に「これは誰の携帯電話ですか?」と尋ねることができます。Siri は顔認識を無効にするのに自動的に役立ちます。 2. 無効にしたくない場合は、Face ID をオンにして、[Face ID を有効にするには視線が必要] をオンにすることを選択できます。このようにすると、ロック画面は監視しているときにのみ開くことができます。

C# で顔認識アルゴリズムを実装する方法 顔認識アルゴリズムは、コンピュータ ビジョンの分野における重要な研究方向であり、顔を識別および検証するために使用でき、セキュリティ監視、顔支払い、顔ロック解除などの分野で広く使用されています。この記事では、C# を使用して顔認識アルゴリズムを実装する方法と、具体的なコード例を紹介します。顔認識アルゴリズムを実装する最初のステップは、画像データを取得することです。 C# では、EmguCV ライブラリ (OpenCV の C# ラッパー) を使用して画像を処理できます。まず、プロジェクトを作成する必要があります
