인스턴스 세그먼테이션 사용방법

현재 최신 버전 (2.6.2)에 대한 매뉴얼을 보고 계십니다. 다른 버전에 액세스하려면 페이지 오른쪽 상단 모서리에 있는 '버전 전환' 버튼을 클릭하세요.

■ 현재 사용하고 있는 제품의 버전이 확실하지 않은 경우에는 언제든지 당사 기술 지원팀에 문의하시기 바랍니다.

동영상 튜토리얼 : 인스턴스 세그먼테이션 사용방법

이 섹션에서는 불규칙한 판금 부품의 샘플 데이터를 제공합니다( 데이터 다운로드 ). 사용자는 인스턴스 세그먼테이션 모듈을 사용하여 모델을 훈렬할 수 있습니다. 전반적인 프로세스는 데이터 획득, 데이터 처리, 데이터 레이블링, 모델 훈련, 모델 검증, 모델 내보내기의 6단계로 구성됩니다.

새 버전의 Mech-DLK에서는 사용자가 고품질 이미지를 획득·선별하여 Mech-DLK에 가져온 후, 소량의 이미지에 정확히 레이블을 지정하고 이미지 원본 특성을 유지하면서 훈련 파라미터를 적절히 설정하기만 하면 됩니다. 이를 통해 강력한 일반화 성능을 갖춘 인스턴스 세그먼테이션 모델을 손쉽게 훈련할 수 있습니다.

또한, 사용자가 직접 준비한 데이터를 사용할 수도 있습니다. 프로세스는 동일하지만, 레이블링 방법에 차이가 있습니다.

데이터 획득

데이터 획득 규범을 엄격히 준수하여, 훈련에 필요한 이미지를 획득합니다. 프로젝트 요구 사항에 따라 2D 노출 및 화이트 밸런스를 조정해 이미지 품질을 개선합니다. 또한, 모델의 일반화 성능 향상을 위해 부품의 배치 위치와 자세를 수동으로 조정하여 데이터 다양성을 높이십시오. 이미지 획득 후에는 필터링을 통해 후속 레이블링 및 훈련에 적합한 고품질 이미지를 선별하여 유지합니다.

advanced instance segmentation brightness
advanced instance segmentation position

데이터 처리

Mech-DLK을 열고 메인 화면에서 새로운 프로젝트를 클릭합니다. 프로젝트 경로를 선택하고 프로젝트 이름을 입력하여 새 프로젝트를 생성합니다. 그런 다음 화면 오른쪽 상단에 있는 +을 클릭하여 인스턴스 세그먼테이션 모듈을 선택합니다.

example projects instance segmentation
  1. 이미지 데이터 가져오기 : 수집한 이미지를 가져오거나, 이 섹션에서 제공한 데이터 파일의 압축을 푼 후 왼쪽 상단의 가져오기/내보내기 버튼을 클릭하고 폴더 가져오기를 선택하여 이미지를 가져옵니다.

    example projects import images

    데이터에 중복된 이미지가 있는 경우, 이미지 가져오기 팝업창에서 건너뛰기 또는 가져오기를 선택할 수 있으며, 이미지에 태그를 설정할 수 있습니다. 이미지당 하나의 태그만 지원되므로, 이미 태그가 설정된 이미지에 새 태그를 추가하면 기존 태그가 덮어쓰기됩니다. 데이터 세트를 가져올 경우, 중복된 이미지를 교체할지 여부를 선택할 수 있습니다.

    • 이미지 또는 폴더 가져오기 시 표시되는 대화 상자:

      example projects duplicate1
    • 데이터 세트 가져오기 시 표시되는 대화 상자:

      example projects duplicate3
      데이터 세트 가져오기를 선택하면 DLKDB 형식(.dlkdb)과 COCO 형식의 데이터세트를 가져올 수 있습니다(예제 데이터 세트 다운로드).
  2. ROI 선택 : ROI 도구 버튼(example projects icon roi)을 클릭하여 나무 블록이 있는 bin을 선택합니다. 그런 다음, ROI의 우측 하단에 있는 확인 버튼(tools introduction OK)을 클릭하여 설정을 저장합니다. ROI를 설정하는 목적은 불필요한 배경의 간섭을 줄이는 것입니다.

    advanced instance segmentation roi
  3. 클래스 만들기 : 클래스 패널에서 + 추가 버튼을 클릭하고 다양한 물체 유형이나 특징에 따라 클래스를 만듭니다. 이 프로젝트에서는 앞면/뒷면 구분 등의 요구 없이 단일 유형만 식별하면 되므로, 클래스는 하나만 생성하면 됩니다. 여러 유형의 물체를 인식해야 하는 경우에는 물체 특징에 따라 여러 클래스를 만들고 이름을 지정할 수 있습니다.

    advanced instance segmentation create label
    클래스를 마우스 오른쪽 버튼으로 클릭하고 다음으로 병합을 선택하면 현재 클래스의 데이터를 다른 클래스로 변경할 수 있습니다. 모델 훈련 후 클래스를 병합한 경우, 모델을 다시 훈련하는 것을 권장합니다.
    example projects create labels

데이터 레이블링

레이블링 중에는 레이블링 규범을 엄격히 준수하시기 바랍니다.

  1. 공용 레이블링 규칙 : 이 시나리오에서는 가장 위에 노출된 부품에만 레이블을 지정합니다. 부품의 중심과 양쪽 끝이 가려지지 않아야 하며, 픽 포인트가 빈에 너무 가까이 위치하지 않아야 합니다.

    Ctrl 키를 누른 채 마우스 휠을 위로 굴리면 이미지가 확대되어 더 정밀한 레이블링이 가능합니다.
  2. 데이터 레이블링 : 화면 왼쪽의 레이블 툴 바에서 example projects icon tool을 마우스 왼쪽 버튼을 길게 누르거나, 마우스 오른쪽 버튼으로 클릭하여 레이블 도구를 선택합니다. 이 시나리오에서는 부품의 형상이 불규칙하므로 다각형 도구를 사용하여 여러 앵커 포인트를 설정해 다각형 레이블을 만듭니다.
    이미지 데이터가 많을 경우 모든 데이터에 레이블을 지정할 필요는 없습니다. 소량의 데이터만으로도 훈련을 시작할 수 있으며, 예를 들어 이 시나리오에서는 10장의 이미지만 선택하여 레이블링하면 충분합니다. 또한, 부품의 위치 등 특징을 기반으로 차별성이 있는 이미지를 우선적으로 레이블링하는 것이 좋습니다.

    advanced instance segmentation label
    레이블링 도구 사용 방법에 대한 자세한 설명은 레이블링 도구 섹션을 참조하세요.
  3. 훈련 세트 및 검증 세트 비율 조정: 레이블이 지정된 이미지를 훈련 세트로 이동한 후, 훈련 세트와 검증 세트의 비율을 설정합니다. 일반적으로 전체 데이터의 80%를 훈련, 20%를 검증에 사용합니다. 소프트웨어는 레이블이 지정되어 훈련 세트로 이동된 이미지를 자동으로 학습용/검증용으로 분할합니다.

    advanced instance segmentation add set

모델 훈련

  1. 데이터 증강 파라미터 구성 : 이상적인 훈련 데이터는 실제 생산 환경에서 발생할 수 있는 다양한 조건을 반영해야 합니다.

    advanced instance segmentation parameters1
    • 이 시나리오에서는 이미지 수집 중 조명이 비교적 밝았기 때문에 휘도 값을 적절히 낮춰 모델의 안정성과 성능을 향상시킬 수 있습니다.

    • 부품과 배경 간의 색상 차이가 작으므로 명암비(contrast) 파라미터를 조정하여 부품 인식 정확도를 높이는 것이 좋습니다.

    • 빈 상단에 위치한 부품들은 이동, 회전, 뒤집기 등 다양한 자세로 분산되어 있습니다. 특징 손실을 방지하기 위해 평행 이동, 회전, 수평 뒤집기, 수직 뒤집기 파라미터를 적절히 조정하여, 모델이 여러 위치와 자세의 부품을 안정적으로 인식할 수 있도록 합니다.

    • 이 시나리오에서 사용되는 이미지 데이터의 부품의 위치는 비슷하므로,스크기 조정 파라미터를 상황에 맞게 조정할 수 있습니다.

  2. 훈련 파라미터 설정

    advanced instance segmentation parameters2
    • 입력된 이미지의 크기 : 훈련 중 모델에 입력되는 이미지의 너비와 높이(픽셀 단위)를 의미합니다.이미지 크기가 클수록 모델의 정확도는 향상되지만, 훈련 속도는 느려집니다. 따라서 레이블과 부품의 세부 사항이 명확하게 식별될 수 있다는 전제하에, 이미지 크기를 적절히 줄여 훈련 시간을 단축할 수 있습니다. 이 프로젝트에서는 기본값을 사용하면 됩니다.

    • Epochs : 모델이 전체 훈련 데이터를 훈련하는 총 반복 횟수를 의미합니다. 이 프로젝트에서는 부품의 특징이 비교적 복잡하므로, 충분한 훈련을 위해 훈련 횟수를 늘리는 것이 필요합니다.

    • 기타 파라미터는 기본값을 사용합니다.

    • 이 프로젝트에서는 모델 파인튜닝이 필요하지 않습니다. 기본 설정을 사용합니다.

    • 확인을 클릭하여 설정을 저장합니다.

    파라미터에 대한 자세한 내용은 파라미터 설명을 참조하세요.

  • 입력 이미지 크기가 요구 사항을 충족한다는 전제하에, 더 작은 크기로 설정하면 모델 훈련 및 추론 속도를 향상시킬 수 있습니다.

  • 이미지 크기가 클수록 결함 및 검증 영역의 윤곽 매칭이 용이해지고 모델 정확도도 높아지지만, 훈련 epoch 수와 소요 시간은 증가합니다.

  1. 훈련 시작 : 훈련 탭에서 훈련 버튼을 클릭하여 모델 훈련을 시작합니다.

    advanced instance segmentation train
  2. 훈련 정보를 통해 훈련 상태 확인 : 훈련 탭 아래의 훈련 정보 패널에서 실시간으로 모델 훈련 정보를 확인할 수 있습니다.

    advanced instance segmentation training info
  3. 훈련 차트를 통해 훈련 상태 확인 : 훈련 탭에서 훈련 차트훈련 센터 버튼을 클릭하면, 모델 훈련 과정 중 정확도 곡선과 손실 곡선의 변화 및 훈련 상태를 실시간으로 확인할 수 있습니다. 훈련이 완료되면, 최고 정확도 와 테스트 세트 검증 결과를 통해 모델 훈련 효과를 평가합니다. 정확도 곡선이 전반적으로 상승하고, 손실 곡선이 전반적으로 하락하는 추세를 보이면 현재 훈련이 정상적으로 진행되고 있음을 의미합니다.

    advanced instance segmentation training chart

모델 검증

  1. 모델 검증 : 훈련이 완료된 후, 검증 탭에서 검증 버튼을 클릭하여 모델을 검증할 수 있습니다.

    example projects verify chart
  2. 모델 검증 결과 확인

    • 검증이 완료되면, 검증 탭의 검증 통계 영역에서 검증 결과 요약을 확인할 수 있습니다. 또한, 전체 리포트 보기 버튼을 클릭하면 보다 상세한 검증 통계 결과를 확인할 수 있습니다.
      리포트의 혼동 행렬(Statistical matrix)은 모델의 추론 결과와 실제 레이블 간의 관계를 시각화한 것으로, 각 클래스에 대해 모델이 얼마나 정확하게 예측했는지를 평가하는 데 사용됩니다. 이 혼동 행렬에서 세로축은 실제 레이블을, 가로축은 예측 결과를 나타냅니다. 파란색 셀은 예측과 실제가 일치한 경우를, 다른 셀은 불일치한 경우를 나타내며, 모델의 성능 개선에 사용될 수 있습니다. 또한, 행렬 내 수치 결과 셀을 클릭하면 메인 화면의 이미지 목록이 해당 값에 해당하는 이미지로 자동 필터링되어, 관련된 데이터를 빠르게 확인할 수 있습니다.

      example projects detail report
    • 훈련 세트와 검증 세트를 점검합니다. 또한, 테스트 세트는 검증 과정에서 모델의 일반화 성능을 평가하는 데 사용되므로 특히 꼼꼼히 확인해야 합니다.

      • 미검출 문제가 있을 경우, 레이블을 추가할 수 있으나 이미지 내 검출된 부분과 검출되지 않은 부분 모두에 레이블을 달아야 하며, 이후 이미지를 훈련 세트에 포함시켜 다시 훈련 및 검증해야 합니다.

      • 과검출 문제는 주로 후처리 방식을 사용하며, 모델 사용 시 신뢰도 임계값 설정을 통해 데이터를 필터링하는 방법으로 해결합니다.

    • 훈련 세트에서 과검 또는 미검이 발생하지 않는다면, 모델이 초기 단계에서 일반화 능력을 어느 정도 습득했음을 의미합니다.

      테스트 세트의 모든 미검·과검 이미지를 전부 다시 레이블링하여 훈련 세트로 포함시킬 필요는 없습니다. 일부 이미지만 추가로 레이블링하여 훈련 세트에 포함한 뒤, 모델을 다시 훈련 및 검증하고, 나머지 이미지는 참고용으로 사용하여 검증 결과를 관찰함으로써 모델의 반복 개선 효과를 점검할 수 있습니다. 전체 리포트 보기 창의 오른쪽 하단에 위치한 리포트 내보내기 버튼을 클릭하면, 썸네일 이미지 또는 원본 이미지 형태로 리포트를 내보낼 수 있습니다.
      example projects export report
  3. 훈련 재시작 : 새로 레이블링한 이미지를 훈련 세트에 추가한 후, 훈련 버튼을 클릭하여 훈련을 다시 시작합니다.

  4. 모델 검증 결과 재확인 : 훈련 완료 후, 검증 버튼을 다시 클릭하여 모델을 검증하고, 각 데이터 세트에서의 검증 결과를 다시 확인합니다.

  5. 모델 파인튜닝(선택 사항) : 개발자 모드를 활성화한 후, 훈련 파라미터 설정에서 모델 파인튜닝 기능을 사용할 수 있습니다.

  6. 모델 지속 최적화 : 모델이 실제 사용 요구 사항을 충족할 때까지, 위의 단계를 반복하여 모델 성능을 지속적으로 최적화합니다.

모델 내보내기

검증 탭에서 내보내기를 클릭합니다. 팝업 창에서 내보낸 모델을 저장할 디렉토리를 선택하고 내보내기를 클릭합니다.

example projects model files

내보낸 모델은 Mech-Vision, Mech-DLK SDK, Mech-MSR에서 사용할 수 있습니다. 자세한 내용은 여기를 클릭하여 확인하세요.

이 페이지가 도움이 되었습니까?

다음 방법을 통해 피드백을 보내주실 수 있습니다:

저희는 귀하의 개인정보를 소중히 다룹니다.

당사 웹사이트는 최상의 사용자 경험을 제공하기 위해 쿠키를 사용하고 있습니다. "모두 수락"을 클릭하시면 쿠키 사용에 동의하시는 것이며, "모두 거부"를 클릭하시면 이 웹사이트 방문 시 귀하의 정보가 추적되거나 기억되지 않도록 단일 쿠키만 사용됩니다.