본문 바로가기

딥러닝프로젝트/face_identification

Tensorflow Object Detection api 코드분석

분석날짜:20년 4월6일~10일

 

face_detection + face_verfication이 최종목적입니다.

 

face_detection이 완료되었습니다.

 이제 face_verification을 할 차례입니다.

 

face_vericfication을 하기 위해서는 detection에서 얻은 bouding_box의 좌표정보및 , 크기정보가 필요합니다.

 

그래서 , 코드 분석의 필요성을 느꼇습니다.

 

기존에 올렸던 Colab의 ObjectionDetection.py 파일을 보면export_inference_graph라는 파이썬 파일을 통해서

bounding box를 출력하였습니다. 그래서 , 저는 이 export_infereence_graph.py파일을 분석하였습니다.

 

https://github.com/tensorflow/models/blob/master/research/object_detection/export_inference_graph.py

 

 

 

tensorflow/models

Models and examples built with TensorFlow. Contribute to tensorflow/models development by creating an account on GitHub.

github.com

 

 

Detection_boxes :[batch, num_boxes,4]

Batch: input_image의 개수

Num_boxes:detected 된 박스의 개수

4: x_min,y_min,width,height

 

Non_maximum_suprression거친후 정렬해서 저장된걸로 추정됩니다.

 

파일안에를 보면 run_inference_for_single_image라는 파일을통해서 output결과를 dict형태로 받는것을 확인하였습니다

 

받은것을 vis_util.visualize_boxes_and_labels_on_image_array 라는 파일을 통해서 출력을 하기 때문에 visualization_utils.py 파일을 분석하였습니다.

 

https://github.com/tensorflow/models/blob/master/research/object_detection/utils/visualization_utils.py

 

tensorflow/models

Models and examples built with TensorFlow. Contribute to tensorflow/models development by creating an account on GitHub.

github.com

 

Max_boxes_to_draw : 내가 그릴 박스의개수

boxes.shape[0] :검출한 박스의 개수

 

min_score_thresh:confidence score

 

결국 , 위의 Detection_boxes 에 thresh값을 넘은 box들이 정렬되어 저장됨을 알 수 있습니다.