OpenCV和PHP的人脸识别技术
OpenCV安装之前必须依赖的包:(请先安装好)pkgconfiglibpngzliblibjpeglibtiffpython[OpenCV安装] www.opencv.org.tar xvzf OpenCV-1.0.0.tar.gzcd opencv-1.0.0./configuremakemake installmake check (检查是否安装全部正确)[facedetect] http://www.xarg.org/download/facedetect-1.0.0.tar.gztar xzvf facedetect-1.0.0.tar.gzcd facedetect-1.0.0/usr/local/php/bin/phpize./configure --with-php-config=/usr/local/php/bin/php-configmakemake testmake install[ImageMagick] http://www.imagemagick.org/tar jxvf ImageMagick-6.5.0-0.tar.bz2cd ImageMagick-6.5.0-0./configuremakemake install[imagick] http://pecl.php.net/imagicktar zxvf imagick-2.3.0b1.tgzimagick-2.3.0b1/usr/local/php/bin/phpize./configure --with-php-config=/usr/local/php/bin/php-configmakemake testmake install[配置]ll /usr/local/php/lib/php/extensions/no-debug-non-zts-20060613/看看有没有 facedetect.so 和 imagick.sovi /usr/local/php/lib/php.ini在[PHP]模块下增加:extension = facedetect.soextension = imagick.so重启apache[测试代码]从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);//------------------// 人脸扭曲//------------------<?phpif($_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{?><meta http-equiv="Content-Type" content="text/html; charset=utf-8" /><form method="POST" enctype="multipart/form-data">人脸识别试验:只支持jpg,png<br>上传一张图片 <input type="file" name="pic"><input type="submit" value="upload"></form><?}?>//------------------// 人脸识别//------------------<?phpheader("Content-Type:text/html; charset:utf-8");if(empty($_POST)) {?><html><head><meta HTTP-EQUIV="Content-Type" CONTENT="text/html; charset=UTF-8"><title>人脸识别</title></head><body><h2 id="人脸识别">人脸识别</h2>PS: 请上传一张带有人脸的图片<br /><form name="form" id="form" method="POST" enctype="multipart/form-data" action="">上传图片:<input type="file" name="pic" size="20″"><input type="submit" name="submit" value="上传"></form></body></html><?php} else {$img = $_FILES['pic']['tmp_name'];$arr = face_detect($img, 'haarcascade_frontalface_alt2.xml');if(is_array($arr1)) {$all = array_merge($arr,$arr1);} else {$all = $arr;}$allowtype = 1;switch($_FILES['pic']['type']){case 'image/pjpeg': $fix_pic.= ".jpg"; break;case 'image/jpeg': $fix_pic.= ".jpg"; break;case 'image/x-png': $fix_pic.= ".png"; break;case 'image/png': $fix_pic.= ".png"; break;default: $allowtype = 0; break;}if($allowtype == 0) {echo "文件格式错误:只运行jpg或png图片";exit;}$tmp_name = time();$src_pic = "./".$tmp_name.$fix_pic;move_uploaded_file($_FILES['pic']['tmp_name'], $src_pic);$pic_src = $pic_dst = array();if(is_array($all)){foreach ($all as $k => $v){$tmp_name_new = $tmp_name."_".$k;$x = $v['x'];$y = $v['y'];$w = $v['w'];$h = $v['h'];$dst_pic = "./".$tmp_name_new.$fix_pic;// echo $src_pic."<br>";// echo $dst_pic."<br>";$cmd = "/usr/local/bin/convert -crop ".$w."x".$h."+".$x."+".$y." ".$src_pic." ".$dst_pic;// echo $cmd."<br>";echo `$cmd`;$pic_src[] = "./".$tmp_name.$fix_pic;$pic_dst[] = "./".$tmp_name_new.$fix_pic;}}foreach($pic_src as $key => $value) {echo "<img src='".$value."' alt="OpenCV跟PHP的人脸识别技术" > => <img src='".$pic_dst[$key]."' alt="OpenCV跟PHP的人脸识别技术" ><br>";}}?>
?
?
目前,还为测试,等应用后,再公布实验结果~~
?
?

phpidifiesauser의 sssessionusessessioncookiesandssessionids.1) whensession_start () iscalled, phpgeneratesauniquessessionStoredInacookienamedPhpsSessIdonSeuser 'sbrowser.2) thisidallowsphptoretrievessessionDataTromServer.

PHP 세션의 보안은 다음 측정을 통해 달성 할 수 있습니다. 1. Session_REGENEREAT_ID ()를 사용하여 사용자가 로그인하거나 중요한 작업 일 때 세션 ID를 재생합니다. 2. HTTPS 프로토콜을 통해 전송 세션 ID를 암호화합니다. 3. 세션 _save_path ()를 사용하여 세션 데이터를 저장하고 권한을 올바르게 설정할 보안 디렉토리를 지정하십시오.

phpsessionfilesarestoredInTheRectorySpecifiedBysession.save_path, 일반적으로/tmponunix-likesystemsorc : \ windows \ temponwindows.tocustomizethis : 1) austession_save_path () toSetacustomDirectory, verlyTeCustory-swritation;

toretrievedatafromAphPsession, startSessionstart_start () andaccessvariblesinthe $ _sessionArray.forexample : 1) startthessession : session_start (). 2) retrievedata : $ _ session [ 'username']; echo "Welcome,". $ username;

세션을 사용하여 효율적인 쇼핑 카트 시스템을 구축하는 단계에는 다음이 포함됩니다. 1) 세션의 정의와 기능을 이해합니다. 세션은 요청에 따라 사용자 상태를 유지하는 데 사용되는 서버 측 스토리지 메커니즘입니다. 2) 쇼핑 카트에 제품 추가와 같은 기본 세션 관리를 구현합니다. 3) 제품 수량 관리 및 삭제 지원 고급 사용으로 확장; 4) 세션 데이터를 지속하고 보안 세션 식별자를 사용하여 성능 및 보안을 최적화합니다.

이 기사는 PHP의 인터페이스를 생성, 구현 및 사용하는 방법을 설명하여 코드 구성 및 유지 관리에 대한 이점에 중점을 둡니다.

이 기사에서는 PHP의 암호 해싱에 대한 Crypt ()와 Password_hash ()의 차이점에 대해 논의하여 최신 웹 애플리케이션에 대한 구현, 보안 및 적합성에 중점을 둡니다.

기사는 입력 유효성 검사, 출력 인코딩 및 OWASP ESAPI 및 HTML 청정기와 같은 도구를 통해 PHP의 크로스 사이트 스크립팅 (XSS) 방지에 대해 논의합니다.


핫 AI 도구

Undresser.AI Undress
사실적인 누드 사진을 만들기 위한 AI 기반 앱

AI Clothes Remover
사진에서 옷을 제거하는 온라인 AI 도구입니다.

Undress AI Tool
무료로 이미지를 벗다

Clothoff.io
AI 옷 제거제

Video Face Swap
완전히 무료인 AI 얼굴 교환 도구를 사용하여 모든 비디오의 얼굴을 쉽게 바꾸세요!

인기 기사

뜨거운 도구

SecList
SecLists는 최고의 보안 테스터의 동반자입니다. 보안 평가 시 자주 사용되는 다양한 유형의 목록을 한 곳에 모아 놓은 것입니다. SecLists는 보안 테스터에게 필요할 수 있는 모든 목록을 편리하게 제공하여 보안 테스트를 더욱 효율적이고 생산적으로 만드는 데 도움이 됩니다. 목록 유형에는 사용자 이름, 비밀번호, URL, 퍼징 페이로드, 민감한 데이터 패턴, 웹 셸 등이 포함됩니다. 테스터는 이 저장소를 새로운 테스트 시스템으로 간단히 가져올 수 있으며 필요한 모든 유형의 목록에 액세스할 수 있습니다.

SublimeText3 Mac 버전
신 수준의 코드 편집 소프트웨어(SublimeText3)

에디트플러스 중국어 크랙 버전
작은 크기, 구문 강조, 코드 프롬프트 기능을 지원하지 않음

SublimeText3 Linux 새 버전
SublimeText3 Linux 최신 버전

스튜디오 13.0.1 보내기
강력한 PHP 통합 개발 환경

没有,没在windows下测试。