>

현재 tensorflow 객체 감지 API를 사용하고 있지만 이미지에 경계 상자를 만드는 동안 API는 단일 항목에 여러 경계 상자를 만드는 경향이 있습니다. 어쨌든 하나의 고유 한 경계 상자 만 단일 항목 위에 만들어 지도록 만들 수 있습니까?

오브젝트 감지에 사용하는 현재 모델은 열린 이미지 데이터 세트에 대해 훈련 된 더 빠른 rcnn 모델입니다 (g3doc 모델 동물원에서)

  • 답변 # 1

    내 경험상 이것은 검출기의 표준 동작입니다. 시끄러운 것으로 가정하고 상자를 배치하는 방법에 따라 동일한 항목을 여러 개체로 여러 번 감지 할 수 있습니다.

    이것이 검출기에 잘못된 예측을 걸러내는 필터링 기능이 필요한 이유입니다.IoU개념을 사용하면 쉽게 교차점을 교차 할 수 있습니다. 여기에 예제가 있으며 사용할 수있는 코드도 있습니다.

    기본적으로 일반적인 방식으로 고정 된 모델을 사용하여 감지를 수행하십시오. 그런 다음 예측 된 상자를 확인하고 어떻게 든 오버레이 된 상자를 버립니다. i. 이자형. 다른 상자에 대해 신뢰도가 낮은 오버레이 된 상자를 버릴 수 있습니다.

    도움이 되시길 바랍니다!

  • 답변 # 2

    이것은 research>object-detection>utils>visualisation_utils.py로 이동하여 min_score_threshold 값을 변경하십시오 :

    def visualize_boxes_and_labels_on_image_array(
        image,
        boxes,
        classes,
        scores,
        category_index,
        instance_masks=None,
        instance_boundaries=None,
        keypoints=None,
        use_normalized_coordinates=False,
        max_boxes_to_draw=20,
        min_score_thresh=.90,
        agnostic_mode=False,
        line_thickness=4,
        groundtruth_box_visualization_color='black',
        skip_scores=False,
        skip_labels=False):
    
    

    내 경우에는 90 %보다 큰 임계 값을 사용합니다. 위의 스크립트를 사용하여 경계 상자의 보더 두께와 색상을 변경할 수있는 추가 기능으로 낮은 확률로 다른 경계 상자를 제거합니다.

  • 이전 html - 페이지 스크롤시 페이지 내용이 왼쪽 및 가운데 정렬 됨
  • 다음 php - Json_encode가 빈 배열을 반환하는 이유는 무엇입니까?