*************************** 绾ц仈鍒嗙被鍣ㄨ缁� *************************** .. highlight:: cpp 浠嬬粛 ================ 绾ц仈鍒嗙被鍣ㄥ寘鎷袱閮ㄥ垎锛氳缁冨拰妫€娴嬨€� 妫€娴嬮儴鍒嗗湪OpenCV ``objdetect`` 妯″潡鐨勬枃妗d腑鏈変粙缁嶏紝鍦ㄩ偅鏂囨。涓粰鍑轰簡涓€浜涚骇鑱斿垎绫诲櫒鐨勫熀鏈粙缁嶃€傝繖涓寚鍗楁槸鎻忚堪濡備綍璁粌鍒嗙被鍣細鍑嗗璁粌鏁版嵁鍜岃繍琛岃缁冪▼搴忋€� 閲嶇偣娉ㄦ剰浜嬮」 --------------- OpenCV涓湁涓や釜绋嬪簭鍙互璁粌绾ц仈鍒嗙被鍣細 ``opencv_haartraining`` and ``opencv_traincascade``銆� ``opencv_traincascade`` 鏄竴涓柊绋嬪簭锛屼娇鐢∣penCV 2.x API 浠++ 缂栧啓銆傝繖浜岃€呬富瑕佺殑鍖哄埆鏄� ``opencv_traincascade`` 鏀寔 Haar [Viola2001]_ 鍜� LBP [Liao2007]_ (Local Binary Patterns) 涓ょ鐗瑰緛锛屽苟鏄撲簬澧炲姞鍏朵粬鐨勭壒寰併€備笌Haar鐗瑰緛鐩告瘮锛孡BP鐗瑰緛鏄暣鏁扮壒寰侊紝鍥犳璁粌鍜屾娴嬭繃绋嬮兘浼氭瘮Haar鐗瑰緛蹇嚑鍊嶃€侺BP鍜孒aar鐗瑰緛鐢ㄤ簬妫€娴嬬殑鍑嗙‘鐜囷紝鏄緷璧栬缁冭繃绋嬩腑鐨勮缁冩暟鎹殑璐ㄩ噺鍜岃缁冨弬鏁般€傝缁冧竴涓笌鍩轰簬Haar鐗瑰緛鍚屾牱鍑嗙‘搴︾殑LBP鐨勫垎绫诲櫒鏄彲鑳界殑銆� ``opencv_traincascade`` and ``opencv_haartraining`` 鎵€杈撳嚭鐨勫垎绫诲櫒鏂囦欢鏍煎紡骞朵笉鐩稿悓銆傛敞鎰忥紝鏂扮殑绾ц仈妫€娴嬫帴鍙o紙鍙傝€� ``objdetect`` 妯″潡涓殑 ``CascadeClassifier`` 绫伙級鏀寔杩欎袱绉嶆牸寮忋€� ``opencv_traincascade`` 鍙互鏃ф牸寮忓鍑洪€夌粌濂界殑绾ц仈鍒嗙被鍣ㄣ€備絾鏄湪璁粌杩囩▼琚腑鏂悗鍐嶉噸鍚缁冭繃绋嬶紝 ``opencv_traincascade`` and ``opencv_haartraining`` 涓嶈兘瑁呰浇涓庝腑鏂墠涓嶅悓鐨勬枃浠舵牸寮忋€� ``opencv_traincascade`` 绋嬪簭浣跨敤TBB鏉ュ鐞嗗绾跨▼銆傚鏋滃笇鏈涗娇鐢ㄥ鏍稿苟琛岃繍绠楀姞閫燂紝璇蜂娇鐢═BB鏉ョ紪璇慜penCV銆� 杩樻湁涓€浜涗笌璁粌鐩稿叧鐨勮緟鍔╃▼搴忋€� * ``opencv_createsamples`` 鐢ㄦ潵鍑嗗璁粌鐢ㄧ殑姝f牱鏈暟鎹拰娴嬭瘯鏁版嵁銆� ``opencv_createsamples`` 鑳藉鐢熸垚鑳借 ``opencv_haartraining`` 鍜� ``opencv_traincascade`` 绋嬪簭鏀寔鐨勬鏍锋湰鏁版嵁銆傚畠鐨勮緭鍑轰负浠� \*.vec 涓烘墿灞曞悕鐨勬枃浠讹紝璇ユ枃浠朵互浜岃繘鍒舵柟寮忓瓨鍌ㄥ浘鍍忋€� * ``opencv_performance`` 鍙互鐢ㄦ潵璇勪及鍒嗙被鍣ㄧ殑璐ㄩ噺锛屼絾鍙兘璇勪及 ``opencv_haartraining`` 杈撳嚭鐨勫垎绫诲櫒銆傚畠璇诲叆涓€缁勬爣娉ㄥソ鐨勫浘鍍忥紝杩愯鍒嗙被鍣ㄥ苟鎶ュ憡鎬ц兘锛屽妫€娴嬪埌鐗╀綋鐨勬暟鐩紝婕忔鐨勬暟鐩紝璇鐨勬暟鐩紝浠ュ強鍏朵粬淇℃伅銆� 鏃㈢劧 ``opencv_haartraining`` 鏄竴涓皢琚純鐢ㄧ殑绋嬪簭锛屼笅闈㈠皢涓嶅啀浠嬬粛锛岃€屼細涓昏浠嬬粛 ``opencv_traincascade`` 銆� ``opencv_createsamples`` 绋嬪簭鐢ㄦ潵涓� ``opencv_traincascade`` 鍑嗗璁粌鏍锋湰锛屽洜姝や篃浼氫粙缁嶅畠銆� 鍑嗗璁粌鏁版嵁 ========================= 璁粌闇€瑕佷竴浜涘垪鏍锋湰銆傛牱鏈垎涓ょ被锛氳礋鏍锋湰鍜屾鏍锋湰銆傝礋鏍锋湰鏄寚涓嶅寘鎷墿浣撶殑鍥惧儚銆傛鏍锋湰鏄緟妫€娴嬬殑鐗╀綋鐨勫浘鍍忋€傝礋鏍锋湰蹇呴』鎵嬪伐鍑嗗锛屾鏍锋湰浣跨敤 ``opencv_createsamples`` 鍒涘缓銆� 璐熸牱鏈� ---------------- 璐熸牱鏈彲浠ユ槸浠绘剰鍥惧儚锛屼絾鏄繖浜涘浘鍍忎腑涓嶈兘鍖呭惈寰呮娴嬬殑鐗╀綋銆傜敤浜庢姞鍙栬礋鏍锋湰鐨勫浘鍍忔枃浠跺悕琚垪鍦ㄤ竴涓枃浠朵腑銆傝繖涓枃浠舵槸绾枃鏈枃浠讹紝姣忚鏄竴涓枃浠跺悕锛堝寘鎷浉瀵圭洰褰曞拰鏂囦欢鍚嶏級銆傝礋鏍锋湰鍜屾牱鏈浘鍍忎篃鍙仛鑳屾櫙鏍锋湰锛屾垨鑰呰儗鏅牱鏈浘鍍忥紝鏈枃妗d腑瀵逛箣涓嶄簣鍖哄垎銆傝繖浜涘浘鍍忓彲浠ユ槸涓嶅悓鐨勫昂瀵革紝浣嗘槸鍥惧儚灏哄搴旇姣旇缁冪獥鍙g殑灏哄澶э紝鍥犱负杩欎簺鍥惧儚灏嗚鐢ㄤ簬鎶犲彇璐熸牱鏈紝骞跺皢璐熸牱鏈缉灏忓埌璁粌绐楀彛澶у皬銆� 涓嬮潰鏄竴涓弿杩版枃浠剁殑渚嬪瓙锛� 鍋囧鐩綍缁撴瀯濡備笅锛� .. code-block:: text /img img1.jpg img2.jpg bg.txt 鍒檅g.txt鏂囦欢涓殑鍐呭灏嗗涓嬫墍绀猴細 .. code-block:: text img/img1.jpg img/img2.jpg 姝f牱鏈� ---------------- 姝f牱鏈敱 ``opencv_createsamples`` 鐢熸垚銆傛鏍锋湰鍙互鐢卞寘鍚緟妫€娴嬬墿浣撶殑涓€寮犲浘鐗囩敓鎴愶紝涔熷彲鐢变竴绯诲垪鏍囪濂界殑鍥惧儚鐢熸垚銆� 璇锋敞鎰忎綘闇€瑕佷竴涓緢澶х殑璐熸牱鏈簱閫佺粰璁粌绋嬪簭杩涜璁粌銆傚鏋滄槸缁濆鍒氭€х殑鐗╀綋锛屽OpenCV鐨勬爣蹇楋紝浣犲彧鏈変竴寮犳鏍锋湰鍥惧儚锛涘鏋滄槸浜鸿劯锛屼綘闇€瑕佸嚑鐧剧敋鑷冲嚑鍗冧釜姝f牱鏈€傚湪寰呮娴嬬墿浣撴槸浜鸿劯鐨勬儏鍐典笅锛屼綘闇€瑕佽€冭檻鎵€鏈夌殑浜虹銆佸勾榫勩€佽〃鎯呯敋鑷宠儭瀛愮殑鏍峰紡銆� 濡傛灉鍙湁涓€寮犲寘鍚墿浣撶殑鍥惧儚锛屽涓€涓叕鍙哥殑鏍囧織锛岄偅涔堝彲浠ラ€氳繃瀵圭墿浣撳浘鍍忕殑闅忔満鏃嬭浆銆佹敼鍙樻爣蹇椾寒搴︿互鍙婂皢鏍囧織鏀惧湪浠绘剰鐨勮儗鏅笂鑰岃幏寰楀ぇ閲忕殑姝f牱鏈€傜敓鎴愮殑姝f牱鏈暟鐩互鍙婇殢鏈虹殑绋嬪害閮藉彲浠ラ€氳繃 ``opencv_createsamples`` 鐨勫懡浠よ鍙傛暟鎺у埗銆� 鍛戒护琛屽弬鏁帮細 * ``-vec <vec_file_name>`` 杈撳嚭鏂囦欢锛屽唴鍚敤浜庤缁冪殑姝f牱鏈€� * ``-img <image_file_name>`` 杈撳叆鍥惧儚鏂囦欢鍚嶏紙渚嬪涓€涓叕鍙哥殑鏍囧織锛夈€� * ``-bg <background_file_name>`` 鑳屾櫙鍥惧儚鐨勬弿杩版枃浠讹紝鏂囦欢涓寘鍚竴绯诲垪鐨勫浘鍍忔枃浠跺悕锛岃繖浜涘浘鍍忓皢琚殢鏈洪€変綔鐗╀綋鐨勮儗鏅€� * ``-num <number_of_samples>`` 鐢熸垚鐨勬鏍锋湰鐨勬暟鐩€� * ``-bgcolor <background_color>`` 鑳屾櫙棰滆壊锛堢洰鍓嶄负鐏板害鍥撅級锛涜儗鏅鑹茶〃绀洪€忔槑棰滆壊銆傚洜涓哄浘鍍忓帇缂╁彲閫犳垚棰滆壊鍋忓樊锛岄鑹茬殑瀹瑰樊鍙互鐢� ``-bgthresh`` 鎸囧畾銆傛墍鏈夊浜� ``bgcolor-bgthresh`` 鍜� ``bgcolor+bgthresh`` 涔嬮棿鐨勫儚绱犻兘琚缃负閫忔槑鍍忕礌銆� * ``-bgthresh <background_color_threshold>`` * ``-inv`` 濡傛灉鎸囧畾璇ユ爣蹇楋紝鍓嶆櫙鍥惧儚鐨勯鑹插皢缈昏浆銆� * ``-randinv`` 濡傛灉鎸囧畾璇ユ爣蹇楋紝棰滆壊灏嗛殢鏈哄湴缈昏浆銆� * ``-maxidev <max_intensity_deviation>`` 鍓嶆櫙鏍锋湰閲屽儚绱犵殑浜害姊害鐨勬渶澶у€笺€� * ``-maxxangle <max_x_rotation_angle>`` X杞存渶澶ф棆杞搴︼紝蹇呴』浠ュ姬搴︿负鍗曚綅銆� * ``-maxyangle <max_y_rotation_angle>`` Y杞存渶澶ф棆杞搴︼紝蹇呴』浠ュ姬搴︿负鍗曚綅銆� * ``-maxzangle <max_z_rotation_angle>`` Z杞存渶澶ф棆杞搴︼紝蹇呴』浠ュ姬搴︿负鍗曚綅銆� * ``-show`` 寰堟湁鐢ㄧ殑璋冭瘯閫夐」銆傚鏋滄寚瀹氳閫夐」锛屾瘡涓牱鏈兘灏嗚鏄剧ず銆傚鏋滄寜涓� ``Esc`` 閿紝绋嬪簭灏嗙户缁垱寤烘牱鏈絾涓嶅啀鏄剧ず銆� * ``-w <sample_width>`` 杈撳嚭鏍锋湰鐨勫搴︼紙浠ュ儚绱犱负鍗曚綅锛夈€� * ``-h <sample_height>`` 杈撳嚭鏍锋湰鐨勯珮搴︼紙浠ュ儚绱犱负鍗曚綅锛夈€� 鍒涘缓鏍锋湰鐨勬祦绋嬪涓嬶細 杈撳叆鍥惧儚娌跨潃涓変釜杞撮殢鏈烘棆杞€傛棆杞殑瑙掑害鐢� ``-max?angle`` 闄愬畾銆傜劧鍚庡儚绱犵殑浜害鍊间綅浜� [``bg_color-bg_color_threshold``; ``bg_color+bg_color_threshold``]鑼冨洿鐨勫儚绱犺璁剧疆涓洪€忔槑鍍忕礌銆傚皢鐧藉櫔澹板姞鍒板墠鏅浘鍍忎笂銆傚鏋滄寚瀹氫簡 ``-inv`` 锛岄偅涔堝墠鏅浘鍍忕殑棰滆壊灏嗚缈昏浆銆傚鏋滄寚瀹氫簡 ``-randinv`` 锛岀▼搴忓皢闅忔満閫夋嫨鏄惁灏嗛鑹茶繘琛岀炕杞€備换閫夎儗鏅浘鍍忥紝灏嗚幏寰楃殑鍓嶆櫙鍥惧儚鏀惧埌鑳屾櫙鍥惧儚涓婏紝骞跺皢鍥惧儚璋冩暣鍒� ``-w`` 鍜� ``-h`` 鎸囧畾鐨勫ぇ灏忋€傛渶鍚庡皢鍥惧儚瀛樺叆vec鏂囦欢锛寁ec鏂囦欢鍚嶇敱鍛戒护琛屽弬鏁� ``-vec`` 鎸囧畾銆� 姝f牱鏈篃鍙粠涓€绯诲垪浜嬪厛鏍囪濂界殑鍥惧儚涓垱寤恒€傛爣璁颁俊鎭彲浠ュ瓨鍌ㄤ簬涓€涓枃鏈枃浠讹紝涓庤儗鏅弿杩版枃浠剁被浼笺€傛枃浠朵腑鐨勬瘡琛屽搴斾竴涓浘鍍忔枃浠躲€傛瘡琛岀殑绗竴涓厓绱犱负鍥惧儚鏂囦欢鍚嶏紝鍚庨潰鏄墿浣撶殑鏁扮洰锛屾渶鍚庢槸鐗╀綋浣嶇疆鍜屽ぇ灏忕殑鎻忚堪 (x, y, width, height)銆� 涓嬮潰鏄弿杩版枃浠剁殑渚嬪瓙锛� 鍋囪鐩綍缁撴瀯濡備笅锛� .. code-block:: text /img img_with_faces_1.jpg img_with_faces_2.jpg info.dat 鏂囦欢info.dat閲岀殑鍐呭濡備笅锛� .. code-block:: text img/img_with_faces_1.jpg 1 140 100 45 45 img/img_with_faces_2.jpg 2 100 200 50 50 50 30 25 25 鍥惧儚img_with_faces_1.jpg涓寘鍚竴涓墿浣撳疄渚嬶紙濡備汉鑴革級锛屾爣绀哄叾鍦ㄥ浘鍍忎腑鐨勪綅缃拰澶у皬鐨勭煩褰负(140, 100, 45, 45)銆傚浘鍍廼mg_with_faces_2.jpg鍖呭惈涓や釜鐗╀綋瀹炰緥銆� 浠庤繖鏍风殑涓€绯诲垪鏁版嵁涓垱寤烘鏍锋湰锛岄渶瑕佸湪鍛戒护琛屾寚瀹� ``-info`` 鑰岄潪鍓嶉潰鎵€鐢ㄧ殑 ``-img`` 鍙傛暟锛� * ``-info <collection_file_name>`` 鎻忚堪鐗╀綋鎵€鍦ㄥ浘鍍忎互鍙婂ぇ灏忎綅缃殑鎻忚堪鏂囦欢銆� 姝ら儴鍒嗘牱鏈垱寤鸿繃绋嬪涓嬶細灏嗙墿浣撳疄渚嬩粠鍥惧儚涓姞鍙栧嚭锛岀劧鍚庡皢涔嬭皟鏁村昂瀵稿埌鐩爣灏哄锛岀劧鍚庝繚瀛樺埌杈撳嚭鐨剉ec鏂囦欢銆傚湪姝よ繃绋嬩腑涓嶄細瀵瑰浘鍍忚繘琛屽彉褰紝鎵€浠ユ湁鏁堢殑鍛戒护琛屽弬鏁颁粎鏈� ``-w``, ``-h``, ``-show`` 鍜� ``-num`` 銆� ``opencv_createsamples`` 涔熷彲浠ョ敤鏉ユ煡鐪嬪拰妫€鏌ヤ繚瀛樹簬vec姝f牱鏈枃浠朵腑鐨勬鏍锋湰銆傝繖鏃跺彧闇€鎸囧畾 ``-vec`` 锛� ``-w`` 鍜� ``-h`` 涓変釜鍙傛暟鍒欏彲銆� ``opencv_createsamples`` 灏嗛€愪竴鏄剧ず姝f牱鏈浘鍍忋€� 鍦ㄨ缁冧腑锛岃缁冪▼搴忓苟涓嶅叧蹇冨寘鍚鏍锋湰鐨剉ec鏂囦欢濡備綍鐢熸垚鐨勶紝浣犲彲浠ヨ嚜宸卞啓绋嬪簭鏉ョ敓鎴恦ec鏂囦欢銆備絾鏄疧penCV鎻愪緵鐨勫伐鍏蜂腑锛屽彧鏈� ``opencv_createsamples`` 绋嬪簭鑳藉鍒涘缓鍖呭惈姝f牱鏈殑vec鏂囦欢銆� 涓€涓獀ec鏂囦欢鐨勪緥瀛愪綅浜� ``opencv/data/vec_files/trainingfaces_24-24.vec`` 銆傚畠鍙敤鏉ヨ缁冧汉鑴稿垎绫诲櫒锛岀獥鍙eぇ灏忎负锛� ``-w 24 -h 24`` 銆� 璁粌绾ц仈鍒嗙被鍣� ================ 涓嬩竴姝ユ槸璁粌鍒嗙被鍣ㄣ€傚鍓嶉潰鎵€杩帮紝 ``opencv_traincascade`` 鍜� ``opencv_haartraining`` 閮藉彲鐢ㄦ潵璁粌涓€涓骇鑱斿垎绫诲櫒锛屼絾鏄澶勫彧浠嬬粛 ``opencv_traincascade`` 銆� ``opencv_haartraining`` 鐨勭敤娉曚笌 ``opencv_traincascade`` 绫讳技銆� 涓嬮潰鏄� ``opencv_traincascade`` 鐨勫懡浠よ鍙傛暟锛屼互鐢ㄩ€斿垎缁勪粙缁嶏細 #. 閫氱敤鍙傛暟锛� * ``-data <cascade_dir_name>`` 鐩綍鍚嶏紝濡備笉瀛樺湪璁粌绋嬪簭浼氬垱寤哄畠锛岀敤浜庡瓨鏀捐缁冨ソ鐨勫垎绫诲櫒銆� * ``-vec <vec_file_name>`` 鍖呭惈姝f牱鏈殑vec鏂囦欢鍚嶏紙鐢� ``opencv_createsamples`` 绋嬪簭鐢熸垚锛夈€� * ``-bg <background_file_name>`` 鑳屾櫙鎻忚堪鏂囦欢锛屼篃灏辨槸鍖呭惈璐熸牱鏈枃浠跺悕鐨勯偅涓弿杩版枃浠躲€� * ``-numPos <number_of_positive_samples>`` 姣忕骇鍒嗙被鍣ㄨ缁冩椂鎵€鐢ㄧ殑姝f牱鏈暟鐩€� * ``-numNeg <number_of_negative_samples>`` 姣忕骇鍒嗙被鍣ㄨ缁冩椂鎵€鐢ㄧ殑璐熸牱鏈暟鐩紝鍙互澶т簬 ``-bg`` 鎸囧畾鐨勫浘鐗囨暟鐩€� * ``-numStages <number_of_stages>`` 璁粌鐨勫垎绫诲櫒鐨勭骇鏁般€� * ``-precalcValBufSize <precalculated_vals_buffer_size_in_Mb>`` 缂撳瓨澶у皬锛岀敤浜庡瓨鍌ㄩ鍏堣绠楃殑鐗瑰緛鍊�(feature values)锛屽崟浣嶄负MB銆� * ``-precalcIdxBufSize <precalculated_idxs_buffer_size_in_Mb>`` 缂撳瓨澶у皬锛岀敤浜庡瓨鍌ㄩ鍏堣绠楃殑鐗瑰緛绱㈠紩(feature indices)锛屽崟浣嶄负MB銆傚唴瀛樿秺澶э紝璁粌鏃堕棿瓒婄煭銆� * ``-baseFormatSave`` 杩欎釜鍙傛暟浠呭湪浣跨敤Haar鐗瑰緛鏃舵湁鏁堛€傚鏋滄寚瀹氳繖涓弬鏁帮紝閭d箞绾ц仈鍒嗙被鍣ㄥ皢浠ヨ€佺殑鏍煎紡瀛樺偍銆� #. 绾ц仈鍙傛暟锛� * ``-stageType <BOOST(default)>`` 绾у埆锛坰tage锛夊弬鏁般€傜洰鍓嶅彧鏀寔灏咮OOST鍒嗙被鍣ㄤ綔涓虹骇鍒殑绫诲瀷銆� * ``-featureType<{HAAR(default), LBP}>`` 鐗瑰緛鐨勭被鍨嬶細 ``HAAR`` - 绫籋aar鐗瑰緛锛� ``LBP`` - 灞€閮ㄧ汗鐞嗘ā寮忕壒寰併€� * ``-w <sampleWidth>`` * ``-h <sampleHeight>`` 璁粌鏍锋湰鐨勫昂瀵革紙鍗曚綅涓哄儚绱狅級銆傚繀椤昏窡璁粌鏍锋湰鍒涘缓锛堜娇鐢� ``opencv_createsamples`` 绋嬪簭鍒涘缓锛夋椂鐨勫昂瀵镐繚鎸佷竴鑷淬€� #. Boosted鍒嗙被鍣ㄥ弬鏁帮細 * ``-bt <{DAB, RAB, LB, GAB(default)}>`` Boosted鍒嗙被鍣ㄧ殑绫诲瀷锛� ``DAB`` - Discrete AdaBoost, ``RAB`` - Real AdaBoost, ``LB`` - LogitBoost, ``GAB`` - Gentle AdaBoost銆� * ``-minHitRate <min_hit_rate>`` 鍒嗙被鍣ㄧ殑姣忎竴绾у笇鏈涘緱鍒扮殑鏈€灏忔娴嬬巼銆傛€荤殑妫€娴嬬巼澶х害涓� min_hit_rate^number_of_stages銆� * ``-maxFalseAlarmRate <max_false_alarm_rate>`` 鍒嗙被鍣ㄧ殑姣忎竴绾у笇鏈涘緱鍒扮殑鏈€澶ц妫€鐜囥€傛€荤殑璇鐜囧ぇ绾︿负 max_false_alarm_rate^number_of_stages. * ``-weightTrimRate <weight_trim_rate>`` Specifies whether trimming should be used and its weight. 涓€涓繕涓嶉敊鐨勬暟鍊兼槸0.95銆� * ``-maxDepth <max_depth_of_weak_tree>`` 寮卞垎绫诲櫒鏍戞渶澶х殑娣卞害銆備竴涓繕涓嶉敊鐨勬暟鍊兼槸1锛屾槸浜屽弶鏍戯紙stumps锛夈€� * ``-maxWeakCount <max_weak_tree_count>`` 姣忎竴绾т腑鐨勫急鍒嗙被鍣ㄧ殑鏈€澶ф暟鐩€俆he boosted classifier (stage) will have so many weak trees (``<=maxWeakCount``), as needed to achieve the given ``-maxFalseAlarmRate``. #. 绫籋aar鐗瑰緛鍙傛暟锛� * ``-mode <BASIC (default) | CORE | ALL>`` 閫夋嫨璁粌杩囩▼涓娇鐢ㄧ殑Haar鐗瑰緛鐨勭被鍨嬨€� ``BASIC`` 鍙娇鐢ㄥ彸涓婄壒寰侊紝 ``ALL`` 浣跨敤鎵€鏈夊彸涓婄壒寰佸拰45搴︽棆杞壒寰併€傛洿澶氱粏鑺傝鍙傝€� [Rainer2002]_ 銆� #. LBP鐗瑰緛鍙傛暟锛� LBP鐗瑰緛鏃犲弬鏁般€� 褰� ``opencv_traincascade`` 绋嬪簭璁粌缁撴潫浠ュ悗锛岃缁冨ソ鐨勭骇鑱斿垎绫诲櫒灏嗗瓨鍌ㄤ簬鏂囦欢cascade.xml涓紝杩欎釜鏂囦欢浣嶄簬 ``-data`` 鎸囧畾鐨勭洰褰曚腑銆傝繖涓洰褰曚腑鐨勫叾浠栨枃浠舵槸璁粌鐨勪腑闂寸粨鏋滐紝褰撹缁冪▼搴忚涓柇鍚庯紝鍐嶉噸鏂拌繍琛岃缁冪▼搴忓皢璇诲叆涔嬪墠鐨勮缁冪粨鏋滐紝鑰屼笉闇€浠庡ご閲嶆柊璁粌銆傝缁冪粨鏉熷悗锛屼綘鍙互鍒犻櫎杩欎簺涓棿鏂囦欢銆� 璁粌缁撴潫鍚庯紝浣犲氨鍙互娴嬭瘯浣犺缁冨ソ鐨勭骇鑱斿垎绫诲櫒浜嗭紒 .. [Viola2001] Paul Viola, Michael Jones. *Rapid Object Detection using a Boosted Cascade of Simple Features*. Conference on Computer Vision and Pattern Recognition (CVPR), 2001, pp. 511-518. .. [Rainer2002] Rainer Lienhart and Jochen Maydt. *An Extended Set of Haar-like Features for Rapid Object Detection*. Submitted to ICIP2002. .. [Liao2007] Shengcai Liao, Xiangxin Zhu, Zhen Lei, Lun Zhang and Stan Z. Li. *Learning Multi-scale Block Local Binary Patterns for Face Recognition*. International Conference on Biometrics (ICB), 2007, pp. 828-837. 缈昏瘧 ====================== 浜庝粫鐞� http://www.opencv.org.cn