컴퓨터 비전이란 무엇입니까? 이미지 및 비디오 용 AI

컴퓨터 비전은 디지털 이미지와 비디오에서 물체를 식별하고 종종 찾습니다. 살아있는 유기체는 시각 피질로 이미지를 처리하기 때문에 많은 연구자들이 포유류 시각 피질의 구조를 이미지 인식을 수행하도록 설계된 신경망의 모델로 삼았습니다. 생물학적 연구는 1950 년대로 거슬러 올라갑니다.

지난 20 년 동안 컴퓨터 비전의 발전은 정말 놀랍습니다. 아직 완벽하지는 않지만 일부 컴퓨터 비전 시스템은 99 %의 정확도를 달성하고 다른 일부는 모바일 장치에서 제대로 실행됩니다.

비전을위한 신경망 분야의 돌파구는 Yann LeCun의 1998 년 LeNet-5로, 32x32 픽셀 이미지로 디지털화 된 손글씨 숫자를 인식하기위한 7 단계 컨볼 루션 신경망 입니다. 고해상도 이미지를 분석하려면 LeNet-5 네트워크를 더 많은 뉴런과 더 많은 계층으로 확장해야합니다.

오늘날 최고의 이미지 분류 모델은 HD 해상도의 다양한 물체 카탈로그를 컬러로 식별 할 수 있습니다. 순수한 딥 뉴럴 네트워크 (DNN) 외에도 사람들은 때때로 특정 하위 작업을 수행하는 고전적인 기계 학습 알고리즘과 딥 러닝을 결합한 하이브리드 비전 모델을 사용합니다.

기본적인 이미지 분류 외에 다른 시각 문제는 딥 러닝으로 해결되었습니다. 여기에는 국소화를 통한 이미지 분류, 객체 감지, 객체 분할, 이미지 스타일 전송, 이미지 색상 화, 이미지 재구성, 이미지 초 해상도 및 이미지 합성이 포함됩니다.

컴퓨터 비전은 어떻게 작동합니까?

컴퓨터 비전 알고리즘은 일반적으로 컨볼 루션 신경망 또는 CNN에 의존합니다. CNN은 일반적으로 컨볼 루션, 풀링, ReLU, 완전 연결 및 손실 계층을 사용하여 시각 피질을 시뮬레이션합니다.

컨볼 루션 레이어는 기본적으로 많은 작은 중첩 영역의 적분을 취합니다. 풀링 계층은 비선형 다운 샘플링의 한 형태를 수행합니다. ReLU 계층은 비 포화 활성화 함수 f (x) = max (0, x)를 적용 합니다.

완전 연결 계층에서 뉴런은 이전 계층의 모든 활성화에 연결됩니다. 손실 계층은 분류를 위해 Softmax 또는 교차 엔트로피 손실을 사용하여 네트워크 훈련이 예측 된 레이블과 실제 레이블 간의 편차에 페널티를주는 방법을 계산합니다.

컴퓨터 비전 교육 데이터 세트

비전 모델 훈련에 유용한 많은 공개 이미지 데이터 세트가 있습니다. 가장 간단하고 가장 오래된 것 중 하나는 MNIST로, 10 개의 수업에 70,000 개의 손글씨 숫자, 교육용 60K, 테스트 용 10K를 포함합니다. MNIST는 가속 하드웨어가없는 랩톱을 사용하더라도 모델링하기 쉬운 데이터 세트입니다. CIFAR-10 및 Fashion-MNIST는 유사한 10 클래스 데이터 세트입니다. SVHN (스트리트 뷰 집 번호)은 Google 스트리트 뷰에서 추출한 실제 집 번호의 600K 이미지 집합입니다.

COCO는 개체 감지, 세분화 및 캡션을위한 대규모 데이터 세트로, 80 개 개체 범주에 330K 이미지가 있습니다. ImageNet에는 경계 상자와 레이블이있는 약 150 만 개의 이미지가 포함되어 있으며 WordNet의 약 10 만 개의 구문을 보여줍니다. Open Images에는 약 5K 레이블과 함께 약 9 백만 개의 이미지 URL이 포함되어 있습니다.

Google, Azure 및 AWS는 모두 매우 큰 이미지 데이터베이스에 대해 훈련 된 자체 비전 모델을 가지고 있습니다. 이를 그대로 사용하거나 전이 학습을 실행하여 이러한 모델을 자체 이미지 데이터 세트에 적용 할 수 있습니다. ImageNet 및 Open Images 기반 모델을 사용하여 전이 학습을 수행 할 수도 있습니다. 모델을 처음부터 빌드하는 것보다 전이 학습의 장점은 훨씬 빠르며 (몇 주가 아닌 몇 시간) 더 정확한 모델을 제공한다는 것입니다. 최상의 결과를 얻으려면 레이블 당 1,000 개의 이미지가 필요하지만 때로는 레이블 당 10 개의 이미지 만 사용하면됩니다.

컴퓨터 비전 애플리케이션

컴퓨터 비전이 완벽하지는 않지만 실용적 이기에는 충분합니다. 좋은 예는 자율 주행 자동차의 비전입니다.

이전에 Google 자율 주행 자동차 프로젝트였던 Waymo는 700 만 마일의 공공 도로에서 테스트를 실시하고 일상적인 교통 상황에서 안전하게 탐색 할 수 있다고 주장합니다. Waymo 밴과 관련된 사고가 1 건 이상 발생했습니다. 경찰에 따르면 소프트웨어에 결함이있는 것으로 여겨지지 않았습니다.

테슬라에는 세 가지 모델의 자율 주행 차가 있습니다. 2018 년에는 자율 주행 모드의 Tesla SUV가 치명적인 사고를당했습니다. 사고 보고서에 따르면 운전자 (사망자)는 콘솔에서 여러 차례 경고를 받았음에도 불구하고 핸들에서 손을 뗐고, 운전자 나 소프트웨어가 콘크리트 장벽에 부딪히지 않도록 브레이크를 시도하지 않았다고합니다. 이 소프트웨어는 운전자의 손이 스티어링 휠에 있다는 것을 제안하기보다는 요구하도록 업그레이드되었습니다.

Amazon Go 매장은 매장 내 컴퓨터 비전 시스템이 쇼핑객이 재고 품목을 픽업하거나 반품하는시기를 감지하는 체크 아웃이 필요없는 셀프 서비스 소매점입니다. 쇼핑객은 Android 또는 iPhone 앱을 통해 식별되고 청구됩니다. Amazon Go 소프트웨어가 항목을 놓친 경우 구매자는 무료로 보관할 수 있습니다. 소프트웨어가 가져온 항목을 잘못 등록하면 구매자는 항목에 플래그를 지정하고 해당 요금에 대한 환불을받을 수 있습니다.

의료 분야에는 병리학 슬라이드, 흉부 X- 레이 및 기타 의료 영상 시스템의 특정 기능을 분류하기위한 비전 애플리케이션이 있습니다. 이들 중 일부는 숙련 된 의사와 비교할 때 가치를 입증했으며 일부는 규제 승인을 받기에 충분합니다. 또한 수술실 또는 분만실에서 환자의 혈액 손실을 예측하기위한 실시간 시스템이 있습니다.

농업 (농업 로봇, 작물 및 토양 모니터링, 예측 분석), 은행 (사기 감지, 문서 인증 및 원격 예금) 및 산업 모니터링 (원격 우물, 현장 보안 및 작업 활동)에 유용한 비전 애플리케이션이 있습니다.

논쟁의 여지가 있거나 더 이상 사용되지 않는 컴퓨터 비전 응용 프로그램도 있습니다. 하나는 얼굴 인식으로, 정부에서 사용하면 사생활 침해가 될 수 있으며 종종 백인이 아닌 얼굴을 오인하는 경향이있는 훈련 편향이 있습니다. 또 다른 하나는 딥 페이크 세대로, 음란물이나 사기 및 기타 사기성 이미지 생성에 사용될 때 다소 소름 끼치는 것 이상입니다.

컴퓨터 비전 프레임 워크 및 모델

대부분의 딥 러닝 프레임 워크는 Python 기반 프레임 워크 인 TensorFlow (프로덕션을위한 최고의 선택), PyTorch (학술 연구를위한 최고의 선택) 및 MXNet (Amazon이 선택한 프레임 워크)을 포함하여 컴퓨터 비전을 실질적으로 지원합니다. OpenCV는 컴퓨터 비전을위한 전문 라이브러리로, 실시간 비전 애플리케이션을 지향하며 MMX 및 SSE 명령어가 사용 가능할 때이를 활용합니다. 또한 CUDA, OpenCL, OpenGL 및 Vulkan을 사용한 가속도 지원합니다.

Amazon Rekognition은 얼굴 분석 및 사용자 지정 레이블을 포함하여 개체, 사람, 텍스트, 장면 및 활동을 식별 할 수있는 이미지 및 비디오 분석 서비스입니다. Google Cloud Vision API는 물체와 얼굴을 감지하고 인쇄 및 필기 텍스트를 읽고 메타 데이터를 이미지 카탈로그에 빌드 할 수있는 사전 학습 된 이미지 분석 서비스입니다. Google AutoML Vision을 사용하면 커스텀 이미지 모델을 학습시킬 수 있습니다. Amazon Rekognition Custom Labels와 Google AutoML Vision은 모두 전이 학습을 수행합니다.

Microsoft Computer Vision API는 25 개 언어로 된 레이블을 사용하여 10,000 개의 카탈로그에서 개체를 식별 할 수 있습니다. 또한 식별 된 개체에 대한 경계 상자를 반환합니다. Azure Face API는 이미지에서 얼굴과 특성을 인식하는 얼굴 감지, 최대 백만 명의 개인 저장소에있는 개인과 일치하는 사람 식별, 인식 된 감정 인식을 수행합니다. Face API는 클라우드 또는 컨테이너의 에지에서 실행할 수 있습니다.

IBM Watson Visual Recognition은 사전 학습 된 모델의 이미지를 분류하고, 전이 학습을 통해 사용자 정의 이미지 모델을 학습시키고, 오브젝트 카운팅으로 오브젝트 감지를 수행하고, 시각적 검사를 위해 학습 할 수 있습니다. Watson Visual Recognition은 Core ML을 사용하여 클라우드 또는 iOS 디바이스에서 실행할 수 있습니다.

데이터 분석 패키지 Matlab은 머신 러닝과 딥 러닝을 사용하여 이미지 인식을 수행 할 수 있습니다. 선택적 Computer Vision Toolbox가 있으며 OpenCV와 통합 할 수 있습니다.

컴퓨터 비전 모델은 LeNet-5 이후 먼 길을 왔으며 대부분 CNN입니다. 예를 들면 AlexNet (2012), VGG16 / OxfordNet (2014), GoogLeNet / InceptionV1 (2014), Resnet50 (2015), InceptionV3 (2016) 및 MobileNet (2017-2018)이 있습니다. MobileNet 비전 신경망 제품군은 모바일 장치를 염두에두고 설계되었습니다.

[또한 : Kaggle : 데이터 과학자가 배우고 경쟁하는 곳]

Apple Vision 프레임 워크는 얼굴 및 얼굴 랜드 마크 감지, 텍스트 감지, 바코드 인식, 이미지 등록 및 일반 기능 추적을 수행합니다. 또한 Vision을 사용하면 분류 또는 객체 감지와 같은 작업에 커스텀 Core ML 모델을 사용할 수 있습니다. iOS 및 macOS에서 실행됩니다. Google ML Kit SDK는 비슷한 기능을 가지고 있으며 Android 및 iOS 기기에서 실행됩니다. ML Kit는 자연어 API를 추가로 지원합니다.

지금까지 살펴본 바와 같이 컴퓨터 비전 시스템은 유용 할만큼 훌륭해졌으며 어떤 경우에는 인간의 시각보다 더 정확 해졌습니다. 전이 학습을 사용하여 비전 모델의 사용자 정의는 단순한 필사자에게 실용적이되었습니다. 컴퓨터 비전은 더 이상 박사 수준의 연구자 만의 독점 영역이 아닙니다.

기계 학습 및 딥 러닝에 대해 자세히 알아보십시오.

  • 딥 러닝 vs. 머신 러닝 : 차이점 이해
  • 기계 학습이란 무엇입니까? 데이터에서 파생 된 지능
  • 딥 러닝이란 무엇입니까? 인간의 뇌를 모방 한 알고리즘
  • 기계 학습 알고리즘 설명
  • 자연어 처리 란 무엇입니까? 음성 및 텍스트 용 AI
  • 자동화 된 머신 러닝 또는 AutoML 설명
  • 지도 학습 설명
  • 준지도 학습 설명
  • 비지도 학습 설명
  • 강화 학습 설명
  • Kaggle : 데이터 과학자가 배우고 경쟁하는 곳
  • CUDA는 무엇입니까? GPU를위한 병렬 처리

기계 학습 및 딥 러닝 리뷰 읽기 :

  • 클라우드 머신 러닝 플랫폼을 선택하는 방법
  • Deeplearning4j : JVM을위한 딥 러닝 및 ETL
  • 검토 : Amazon SageMaker, 따라 잡기
  • TensorFlow 2 검토 : 더 쉬운 기계 학습
  • 검토 : Google Cloud AutoML은 진정으로 자동화 된 머신 러닝입니다.
  • 검토 : MXNet 딥 러닝은 Gluon으로 빛납니다
  • PyTorch 리뷰 : 속도를 위해 구축 된 딥 러닝 프레임 워크
  • 검토 : Keras는 딥 러닝을 통해 항해합니다.