Warning: file_get_contents(/data/phpspider/zhask/data//catemap/4/matlab/15.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181

Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/image-processing/2.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
图像处理实时瞌睡驾驶员检测matlab_Matlab_Image Processing - Fatal编程技术网

图像处理实时瞌睡驾驶员检测matlab

图像处理实时瞌睡驾驶员检测matlab,matlab,image-processing,Matlab,Image Processing,我正试图检测困倦的司机 faceDetector = vision.CascadeObjectDetector(); acik = 0; kapali = 0; framesayisi = 0; frame = getsnapshot(obj); framesayisi = framesayisi + 1; bbox = step(faceDetector,frame); videoOut = insertObjectAnnotation(frame,'rectangle',bb

我正试图检测困倦的司机

faceDetector = vision.CascadeObjectDetector();

acik = 0;  
kapali = 0;

framesayisi = 0; 


frame = getsnapshot(obj);
framesayisi = framesayisi + 1;

bbox = step(faceDetector,frame);
videoOut = insertObjectAnnotation(frame,'rectangle',bbox,'');

[hueChannel,~,~] = rgb2hsv(frame);


noseDetector = vision.CascadeObjectDetector('Nose', 'UseROI', true);
noseBBox     = step(noseDetector, frame, bbox);

tracker = vision.HistogramBasedTracker;
initializeObject(tracker, hueChannel, noseBBox);
bboxeye = bbox;


while (1)
       
    frame = getsnapshot(obj);       
    [hueChannel,~,~] = rgb2hsv(frame);  
   
    bbox = step(tracker, hueChannel);    
    
    videoOut = insertObjectAnnotation(frame,'rectangle',bbox,'SÜRÜCÜ');
    subplot(2,1,1);imshow(videoOut); title('Live');
    
    
    
    %% Göz işlemleri
    yuzcr = imcrop(videoOut,bbox);
    yuzcr = rgb2gray(yuzcr);
    
    
    
    EyeDetect = vision.CascadeObjectDetector('EyePairBig');
    bboxeye=step(EyeDetect,yuzcr);      
    
    gozcr = imcrop(yuzcr,bboxeye);
    
    se = strel('disk', 4);
    er = imerode(yuzcr,se);
    dl = imdilate(er,se);
    eg = yuzcr - dl;
    level = graythresh(eg);
    eg = imcrop(eg,bboxeye);
    eg2 = imbinarize(eg,level);    
    
    
    subplot(2,1,2),imshow(eg); title('Live Eyes');
    
    if mean(mean(eg2)) == 0
        kapali = kapali + 1;
    else
        acik  = acik + 1;
    end
    
    if mod(framesayisi,5) == 0
        perclos = (framesayisi - acik)*100/framesayisi;
        kapali = 0;
        acik = 0;
        
        if perclos >= 70
            warning('UYKULU SÜRÜCÜ TESPİT EDİLDİ');
            
        end
    end 
end

这是密码。首先,我必须检测并跟踪司机的面部表情。首先我使用Matlab级联人脸检测器,然后我使用鼻子检测器跟踪人脸。然后我检测眼睛并应用一些形态学过程,决定让昏昏欲睡的司机。问题是,如果人脸检测仪找不到眼睛(有时人脸检测仪不包含眼睛),程序就会失败。

如果这个问题很容易解决,可以在stackoverflow中解决,那么世界上所有的汽车都会有这项技术。。。没那么容易