• 카테고리

    질문 & 답변
  • 세부 분야

    컴퓨터 비전

  • 해결 여부

    미해결

Mask RCNN에서 백그라운드 클래스의 지정 유무

23.05.16 13:25 작성 조회수 145

0

안녕하세요 권철민 선생님

선생님 강의로 많은 도움을 받고 있습니다

항상 감사드립니다

 

오늘은 질문이 있어서 글을 올립니다

Mask RCNN에서 세그멘테이션을 할때

선생님 코드를 보면 인식하고 싶은

object수 만큼만 클래스를 잡아주시던데

백그라운드는 따로 클래스로 지정할 필요가 없나요?

 

어떤 자료들을 보면 클래스 수가

object수+1이라면서 0번째 클래스를

background로 설정하던데요

 

VOC dataset 으로 실습하실때도

클래스 수는 20으로 설정하셔서요

 

저는 제가 인식하고 싶은 물체가 5개인데

백그라운드도 클래스로 넣어야하는건가

라는 생각이 들었습니다

class MyDataset(CocoDataset): CLASSES = ('Object01', 'Object02', 'Object03', 'Object04', 'Object05' )

cfg.model.roi_head.bbox_head.num_classes = 5
cfg.model.roi_head.mask_head.num_classes = 5

 

백그라운드까지 넣으면 이렇게 6으로 설정하는걸까요?

class MyDataset(CocoDataset): CLASSES = ('background', 'Object01', 'Object02', 'Object03', 'Object04', 'Object05' )

cfg.model.roi_head.bbox_head.num_classes = 6
cfg.model.roi_head.mask_head.num_classes = 6

답변 1

답변을 작성해보세요.

0

안녕하십니까,

도움이 되었다니, 저도 기쁘군요.

백그라운드를 클래스 개수에 포함하는지의 여부는 object detection/segmentation Framework/Library 별로 다를 수 있습니다.

mmdetection은 백그라운드를 클래스에 포함시키지 않습니다. 따라서 5개의 클래스를 판별하면 5로 하셔야 합니다.

감사합니다.