2017-04-11 3 views
0

comme la question décrite dans le titre, j'ai essayé d'utiliser caffe ssd pour détecter les choses. https://github.com/weiliu89/caffe/blob/ssd/examples/ssd/ssd_pascal_webcam.py le lien est le projet que j'ai cloné et utilisé. Quand j'ai essayé d'utiliser la webcam pour faire l'analyse en temps réel, j'ai trouvé que dans le projet, seule la caméra USB peut être utilisée pour effectuer la tâche, mais je veux utiliser une autre caméra sur l'autre serveur (par exemple [email protected]: 334), comment puis-je réécrire ce code pour pouvoir utiliser la caméra distante? thxcomment utiliser l'appareil photo à distance lors de l'utilisation de caffe ssd?

Répondre

0

Afin de minimiser les changements de code café, vous pouvez conserver l'adresse Web dans video_file et définir device_id sur autre chose que 0. Pour ajouter ce fichier modifier https://github.com/weiliu89/caffe/blob/ssd/src/caffe/layers/video_data_layer.cpp de support en remplaçant la ligne 45-47 avec:

// suppose 101 is the code for remote webcam 
if(device_id == 101){ 
    CHECK(video_data_param.has_video_file()) << "Must provide webcam address"; 
    const string& video_file = video_data_param.video_file(); 
    if (!cap_.open(video_file)) { 
     LOG(FATAL) << "Failed to open remote webcam: " << video_file; 
    } 
}else { 
    if (!cap_.open(device_id)) { 
     LOG(FATAL) << "Failed to open webcam: " << device_id; 
    } 
} 

maintenant reconstruisent caffe. Modifier votre ligne de fichier https://github.com/weiliu89/caffe/blob/ssd/examples/ssd/ssd_pascal_webcam.py 117 like:

video_data_param = { 
    'video_type': P.VideoData.WEBCAM, 
    'device_id': 101, 
    'skip_frames': skip_frames, 
    'video_file': "remote webcam address" 
} 

Remarque: pour webcam à distance vous pourriez avoir besoin de construire opencv avec ffmpeg.

+0

merci beaucoup. depuis que j'ai rencontré beaucoup de problèmes sur la construction de café. J'ai donc décidé de modifier le fichier ssd_pascal_video.py en fonction de votre réponse.J'ai édité mon fichier ssd_pascal_video.py en changeant le fichier video_file à mon adresse de caméra distante rtsp: // admin: [email protected]: 334. et je le testais, je ne sais pas si cela fonctionne – Ronneycui

+0

vous voulez dire en changeant ''video_type': P.VideoData.VIDEO'? Il y a d'autres choses qui sont faites pour cela. – lnman