LoginSignup
731
739

More than 5 years have passed since last update.

「顔以外」のものを画像認識する on iOS

Last updated at Posted at 2013-12-02

iOS SDK  Core Image  CIDetector iOS 7  

CIDetector  detectorOfType:context:options: 1 Detector Type 
public let CIDetectorTypeFace: String
public let CIDetectorTypeRectangle: String
public let CIDetectorTypeQRCode: String
public let CIDetectorTypeText: String

Detector Types - CIDetector Class Reference

4 QR


OpenCV  Haar 

  使

Haar  xml使

OpenCV


OpenCV  git clone OpenCV for iOS使data/haarcascades 2013122




haarcascade_frontalface_default.xml

haarcascade_frontalface_alt.xml

haarcascade_frontalface_alt2.xml

haarcascade_frontalface_alt_tree.xml

haarcascade_profileface.xml





haarcascade_eye.xml

haarcascade_eye_tree_eyeglasses.xml

haarcascade_mcs_lefteye.xml

haarcascade_mcs_righteye.xml

haarcascade_lefteye_2splits.xml

haarcascade_righteye_2splits.xml

haarcascade_mcs_eyepair_big.xml

haarcascade_mcs_eyepair_small.xml





haarcascade_mcs_leftear.xml

haarcascade_mcs_rightear.xml





haarcascade_mcs_mouth.xml





haarcascade_mcs_nose.xml





haarcascade_fullbody.xml

haarcascade_mcs_upperbody.xml

haarcascade_lowerbody.xml


haarcascade_upperbody.xml




Core Image  CIDetector  

 haarcascade_eye_tree_eyeglasses.xml   


OpenCVCore Image   

OpenCV haartraining 使




(一)

(二)createsamples 使

(三)

(四)haartraining 


1  

 1,00010,000  , x, y, ,  


Web






  

Vehicle Detection, Tracking and Counting on Behance






Computer Vision: OpenCV support for DARPA Autonomous Vehicle



"The trained Haar cascades can be found here." DL

Visual Geometry Group: Oxford-IIIT Pet Dataset



"Oxford-IIIT-Pet dataset"  使



 "Cats and Dogs" 


Cat Head Detection (PDF)





TRACKING ANIMALS IN WILDLIFE VIDEOS USING FACE DETECTION





Computer Vision: OpenCV support for DARPA Autonomous Vehicle



, 

"The trained Haar cascades can be found here." DL

stop signs, stop lights, and pedestrians 

Haar cascade logo detection





100


OpenCVhaar 



Need Haar Casscades for Nose, Eyes & Lips(Mouth)

"Try this one: mozart.dis.ulpgc.es/pub/Software/HaarClassifiers/ It's a set of haar cascades for face features." DLzip (Head and shoulders) 

Oppai



Oppai-Detect 2 @ CodereposCon#1

 "cascade_oppai.xml" 





SMILEsmileD

 iOS7  Core Image 





EHCI 6 degrees of freedom hand tracker

DLaGest.xml 


All about openCV: Creating a haar cascade classifier aka haar training



Pen detector   





 OpenCV for iOS  

OpenCV for iOS使

使 OpenCVHelper.mm 
+ (UIImage *)detect:(UIImage *)srcImage cascade:(NSString *)cascadeFilename {

    cv::Mat srcMat = [OpenCVHelper cvMatFromUIImage:srcImage];

    // グレースケール画像に変換
    cv::Mat grayMat;
    cv::cvtColor(srcMat, grayMat, CV_BGR2GRAY);

    // 分類器の読み込み
    NSString *path = [[NSBundle mainBundle] pathForResource:cascadeFilename
                                                     ofType:nil];
    std::string cascade_path = (char *)[path UTF8String];
    cv::CascadeClassifier cascade;

    if (!cascade.load(cascade_path)) {

        NSLog(@"Couldn't load haar cascade file.");
        return nil;
    }

    // 探索
    std::vector<cv::Rect> objects;
    cascade.detectMultiScale(grayMat, objects,      // 画像,出力矩形
                             1.1, 1,                // 縮小スケール,最低矩形数
                             CV_HAAR_SCALE_IMAGE,   // (フラグ)
                             cv::Size(40, 40));     // 最小矩形

    // 結果の描画
    std::vector<cv::Rect>::const_iterator r = objects.begin();
    for(; r != objects.end(); ++r) {
        cv::Point center;
        int radius;
        center.x = cv::saturate_cast<int>((r->x + r->width*0.5));
        center.y = cv::saturate_cast<int>((r->y + r->height*0.5));
        radius = cv::saturate_cast<int>((r->width + r->height)*0.25);
        cv::circle(srcMat, center, radius, cv::Scalar(80,80,255), 3, 8, 0 );
    }

    return [OpenCVHelper UIImageFromCVMat:srcMat];
}

前述した "Vehicle Detection" のページからカスケードファイル"haarcascade_car_1.xml" をダウンロードしてきて(リンクはよく探してみてください)、 プロジェクトに追加します。

そして、先ほど実装した detect:cascade: メソッドを使用して、

self.imageView.image = [OpenCVHelper detect:self.imageView.image
                                    cascade:@"haarcascade_car_1.xml"];




OKgumroad


gumroad  102gumroad OK 



iOS 7.0 




HaarOpenCV使

詳解 OpenCV ―コンピュータビジョンライブラリを使った画像処理・認識
詳解 OpenCV ―コンピュータビジョンライブラリを使った画像処理・認識

640

  

iOS 100

731
739
3

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
  3. You can use dark theme
What you can do with signing up

731
739