扫描二维码下载沐宇APP

沐宇

微信扫码使用沐宇小程序

沐宇

java+opencv瀹炵幇浜鸿劯璇嗗埆鍔熻兘

扬州沐宇科技
2023-09-14 06:54:35
Java

瑕佷娇鐢↗ava鍜孫penCV瀹炵幇浜鸿劯璇嗗埆鍔熻兘锛屼綘闇€瑕佹寜鐓т互涓嬫楠よ繘琛岋細

  1. 瀹夎OpenCV搴擄細浠嶰penCV瀹樻柟缃戠珯锛坔ttps://opencv.org锛変笅杞介€傚悎浣犳搷浣滅郴缁熺殑OpenCV搴擄紝骞舵寜鐓у畼鏂规枃妗g殑鎸囧杩涜瀹夎銆?/p>

  2. 閰嶇疆Java寮€鍙戠幆澧冿細纭繚浣犵殑Java寮€鍙戠幆澧冨凡缁忔纭畨瑁呭拰閰嶇疆銆?/p>

  3. 鍒涘缓Java椤圭洰锛氬湪浣犵殑IDE涓垱寤轰竴涓柊鐨凧ava椤圭洰銆?/p>

  4. 瀵煎叆OpenCV搴擄細灏哋penCV搴撳鍏ヤ綘鐨凧ava椤圭洰锛屼互渚垮彲浠ュ湪浠g爜涓娇鐢∣penCV鍔熻兘銆?/p>

  5. 鍔犺浇浜鸿劯璇嗗埆妯″瀷锛氫粠OpenCV涓彁渚涚殑妯″瀷搴撲腑鍔犺浇浜鸿劯璇嗗埆妯″瀷锛屽彲浠ヤ娇鐢?code>CascadeClassifier绫绘潵瀹炵幇銆?/p>

CascadeClassifier faceDetector = new CascadeClassifier("path/to/haarcascade_frontalface_default.xml");
  1. 鍔犺浇鍥惧儚骞惰繘琛屼汉鑴告娴嬶細浣跨敤OpenCV鐨?code>Imgcodecs鍜?code>Mat绫绘潵鍔犺浇鍥惧儚锛屽苟浣跨敤浜鸿劯璇嗗埆妯″瀷瀵瑰浘鍍忚繘琛屼汉鑴告娴嬨€?/li>
Mat image = Imgcodecs.imread("path/to/image.jpg");
MatOfRect faceDetections = new MatOfRect();
faceDetector.detectMultiScale(image, faceDetections);
  1. 缁樺埗浜鸿劯妗嗭細浣跨敤OpenCV鐨?code>Rect绫绘潵鑾峰彇妫€娴嬪埌鐨勪汉鑴哥殑浣嶇疆鍜屽ぇ灏忥紝骞朵娇鐢∣penCV鐨?code>Imgproc绫讳腑鐨勫嚱鏁版潵鍦ㄥ浘鍍忎笂缁樺埗浜鸿劯妗嗐€?/li>
for (Rect rect : faceDetections.toArray()) {
Imgproc.rectangle(image, new Point(rect.x, rect.y), new Point(rect.x + rect.width, rect.y + rect.height),
new Scalar(0, 255, 0));
}
  1. 鏄剧ず鍥惧儚锛氫娇鐢∣penCV鐨?code>HighGui绫讳腑鐨勫嚱鏁版潵鏄剧ず甯︽湁浜鸿劯妗嗙殑鍥惧儚銆?/li>
HighGui.imshow("Face Detection", image);
HighGui.waitKey();
  1. 杩愯椤圭洰锛氳繍琛屼綘鐨凧ava椤圭洰锛屽皢鐪嬪埌鍔犺浇鐨勫浘鍍忎笂鍑虹幇浜嗘娴嬪埌鐨勪汉鑴告銆?/li>

杩欏彧鏄熀鏈殑浜鸿劯璇嗗埆鍔熻兘鐨勫疄鐜帮紝浣犲彲浠ユ牴鎹嚜宸辩殑闇€姹傝繘琛岃繘涓€姝ョ殑鎵╁睍鍜屼紭鍖栥€?/p>

扫码添加客服微信