이미지 인식 및 물체 감지란 무엇입니까?

이미지 인식 및 물체 감지의 간략한 역사

2001년에 우리의 이야기는 Paul Viola와 Michael Jones가 발명한 효율적인 얼굴 감지 알고리즘으로 시작되었습니다. 당시 그들은 웹캠을 통해 실시간으로 사람의 얼굴을 감지하는 놀라운 능력을 시연했으며, 컴퓨터 비전과 그 잠재력의 정점이라고 할 수 있습니다. 얼마 지나지 않아 이 알고리즘은 OpenCV에서 구현되었고 얼굴 감지는 Viola 및 Jones 알고리즘과 동의어가 되었습니다.

객체 감지 분야에서는 항상 관심을 끄는 몇 년마다 등장하는 참신한 아이디어가 있습니다. 2005년에 Navneet Dalal과 Bill Triggs는 논문에서 그러한 새로운 아이디어를 제안했습니다. 기능 설명자인 HOG(Histogram of Oriented Gradients)는 보행자 감지에서 기존 알고리즘을 훨씬 능가합니다.

10년 정도마다 매우 효과적이고 강력해서 이전의 모든 아이디어를 기꺼이 버리고 진심으로 받아들일 수 있는 새로운 아이디어가 떠오릅니다. 딥 러닝은 정확히 이 10년의 생각입니다. 딥 러닝 알고리즘은 오래 전부터 존재해 왔지만 딥 러닝이 점차 컴퓨터 비전 분야에서 주류가 된 것은 2012년 ImageNet Large-Scale Visual Recognition Challenge(ILSVRC)의 대성공 이후였습니다. 그 대회에서 Alex Krizhevsky, Ilya Sutskever 및 Geoffrey Hinton은 딥 러닝 기반 알고리즘을 공동으로 발표하여 2위 알고리즘보다 11% 더 높은 놀라운 85% 정확도로 컴퓨터 비전 커뮤니티를 놀라게 했습니다! ILSVRC 2012에서는 이것이 딥 러닝을 기반으로 한 유일한 항목이었습니다. 2013년까지

영상인식 분야의 큰 성공과 함께 딥러닝을 기반으로 한 객체 감지 방법의 등장도 불가피하다. Faster R-CNN과 같은 기술은 여러 개체 범주에서 인상적인 결과를 얻었습니다. 후속 기사에서 이러한 기술을 자세히 살펴보겠지만 애플리케이션에 대한 딥 러닝 기반 이미지 인식 및 객체 감지 알고리즘을 조사하지 않았다면 더 나은 결과를 얻으십시오.

이 개요를 기반으로 이제 이 백서의 핵심 주제인 기존 컴퓨터 비전 기술을 사용한 이미지 인식 이해로 돌아갈 수 있습니다.

이미지 분류 기술

이미지 인식(일명 이미지 분류)의 개념 및 기본 흐름. 이미지 인식 알고리즘은 범주 간의 차이점을 학습하도록 훈련되어 이미지에 무엇이 있는지 인식할 수 있습니다. 여기서는 얼굴 감지기 및 보행자 감지기와 같은 많은 인기 있는 물체 감지기가 이진 분류기를 사용하기 때문에 이진 분류기에 중점을 둡니다. 전통적인 이미지 분류기는 입력 이미지, 특징 추출 및 분류의 단계로 구성됩니다. 딥 러닝 기반 알고리즘은 특징 추출 단계를 우회합니다.

이미지 분류라고도 하는 이미지 인식은 컴퓨터 비전 분야에서 중요한 작업입니다. 이미지 인식 알고리즘은 이미지(또는 이미지 블록)를 입력으로 받아들이고 이미지에 포함된 범주를 출력합니다. 이러한 범주에는 "고양이", "개", "테이블" 등이 포함될 수 있습니다. 알고리즘이 이미지에 있는 것을 인식하려면 알고리즘이 범주 간의 차이를 학습할 수 있도록 훈련 데이터가 필요합니다. 예를 들어 수천 개의 고양이 이미지와 고양이가 포함되지 않은 수천 개의 배경 이미지로 고양이 분류기를 훈련할 수 있습니다.

이진 분류기에 초점을 맞출 것입니다. 이것이 제한적으로 들릴 수 있지만 실제로 얼굴 감지기 및 보행자 감지기와 같은 많은 인기 있는 물체 감지기는 이진 분류기를 기본 구성 요소로 사용합니다.

기존 이미지 분류기의 워크플로는 다음과 같습니다.

  • 입력 이미지: 알고리즘은 이미지를 입력으로 받습니다.
  • 특징 추출: 입력 영상에서 모서리, 모서리, 색상 등 의미 있는 특징을 추출합니다.
  • 분류: 추출된 특징을 기반으로 분류 알고리즘(예: 지원 벡터 머신, 의사 결정 트리 등)을 사용하여 이미지를 여러 범주로 나눕니다.

딥 러닝 기반 이미지 분류 알고리즘은 일반적으로 특징 추출 단계를 우회하고 원시 픽셀에서 직접 특징 표현을 학습한다는 점은 주목할 가치가 있습니다.

이미지 인식의 기본 개념과 프로세스를 이해함으로써 컴퓨터 비전 분야의 관련 기술과 응용 분야를 보다 잘 이해할 수 있어 실제 프로젝트에 이미지 인식 알고리즘을 적용할 수 있는 기반을 마련할 수 있습니다.

이미지 전처리의 중요성

컴퓨터 비전 및 이미지 처리 작업에서 전처리는 특징 추출 및 분류 단계에서 더 나은 결과를 위해 입력 이미지를 정규화하는 중요한 단계입니다. 전처리에는 일반적으로 이미지의 대비 및 밝기 정규화, 색 공간 변환, 입력 이미지 자르기 및 고정 크기로 크기 조정이 포함됩니다.

컴퓨터 비전 분야에서 이미지 전처리는 특징 추출 및 분류 단계에서 더 나은 결과를 얻는 데 도움이 되는 중요하고 결정적인 단계입니다. 이 기사에서는 이미지 전처리의 중요성과 일반적으로 사용되는 몇 가지 방법에 대해 설명합니다.

전처리의 중요성

전처리는 특징 추출 및 분류 단계에서 더 나은 결과를 위해 입력 이미지를 정규화합니다. 전처리에는 일반적으로 이미지의 대비 및 밝기 정규화, 색 공간 변환, 입력 이미지 자르기 및 고정 크기로 크기 조정이 포함됩니다. 전처리 단계가 없으면 모델이 이미지의 작은 차이에 민감하여 성능에 영향을 줄 수 있습니다.

일반적인 전처리 방법

  1. 이미지의 대비와 밝기를 정규화합니다. 일반적으로 입력 이미지는 대비와 밝기 효과를 정규화하기 위해 사전 처리됩니다. 매우 일반적인 전처리 단계는 이미지 강도의 평균을 빼고 표준 편차로 나누는 것입니다. 때때로 감마 보정이 약간 더 나은 결과를 생성합니다.
  2. 색 공간 변환, 컬러 이미지로 작업할 때 RGB에서 LAB 색 공간으로의 색 공간 변환과 같은 색 공간 변환은 더 나은 결과를 얻는 데 도움이 될 수 있습니다. 다른 색상 공간은 이미지에서 다른 정보를 강조 표시할 수 있으며, 이는 특징 추출 및 분류에 유용합니다.
  3. 이미지 자르기 및 크기 조정 전처리의 일부로 입력 이미지 또는 이미지 패치도 자르고 고정된 크기로 크기를 조정합니다. 이는 다음 단계인 특징 추출이 고정된 크기의 이미지에서 수행되기 때문에 필수적입니다.
  4. 전처리 방법 실험 및 조정 전처리 방법 선택에는 고정된 기준이 없으며 특정 작업 및 데이터 세트에 따라 시도하고 조정해야 합니다. 시행 착오를 통해 특정 작업에 적합한 전처리 방법을 찾을 수 있습니다.

이미지 분류에서 특징 추출 방법

이미지 분류에서 특징 추출은 이미지에서 중요한 정보를 추출하고 관련 없는 정보는 무시하는 핵심 단계입니다. 잘 알려진 특징 추출 방법에는 Haar 유사 특징, HOG(Histogram of Oriented Gradients), SIFT(Scale Invariant Feature Transform) 및 SURF(Speeded Up Robust Feature)가 있습니다. HOG를 예로 들면, 이미지의 그래디언트 크기와 방향을 계산하고, 이미지를 셀로 나누고, 그래디언트의 히스토그램을 계산하고, 특징 벡터를 정규화하고 생성하면 원본 이미지가 최종적으로 추가 분류를 위한 특징 벡터로 변환됩니다. 식별합니다.

이미지 분류 기술은 객체 인식에서 이미지 검색 등에 이르기까지 많은 분야에서 널리 사용됩니다. 효과적인 이미지 분류를 위해 추가 처리를 위해 원시 이미지에서 의미 있는 특징을 추출해야 합니다. 이 기사에서는 잘 알려진 몇 가지 특징 추출 방법을 살펴보고 HOG(Histogram of Oriented Gradients) 특징 추출 알고리즘을 자세히 소개합니다.

잘 알려진 특징 추출 방법:

HOG(Oriented Gradients)의 히스토그램

HOG는 로컬 개체의 모양을 설명하기 위해 주로 가장자리 방향(방향 기울기)의 분포(히스토그램)를 기반으로 하는 효과적인 특징 추출 방법입니다. HOG의 계산 프로세스에는 다음 단계가 포함됩니다.

  • 그라데이션 계산: 원본 이미지의 x 및 y 그라데이션 이미지를 계산합니다.
  • 기울기 크기 및 방향 계산: 계산된 기울기 이미지를 사용하여 기울기의 크기와 방향을 얻을 수 있습니다.
  • 이미지를 셀로 나누기: 이미지를 8×8 셀로 나눕니다.
  • 기울기 히스토그램 계산: 원래 128개 숫자를 9빈 히스토그램으로 변환하여 8×8 셀의 기울기 히스토그램을 계산합니다.
  • 정규화: 히스토그램을 정규화하여 조명 변화와 같은 요인의 영향을 상쇄합니다.
  • 고유 벡터 생성: 마지막으로 16×16 블록에서 정규화된 히스토그램을 계산한 다음 이 히스토그램을 연결하여 최종 고유 벡터를 생성합니다.
  • HOG 특징 추출 알고리즘을 통해 원본 이미지를 특징 벡터로 변환하여 분류 및 인식에 사용할 수 있습니다.

척도 불변 특징 변환(SIFT)

SIFT는 이미지에서 특징을 추출하는 알고리즘입니다. HOG와 유사하게 SIFT로 추출한 특징은 스케일 불변입니다. 즉, 이미지의 스케일을 조정해도 유효합니다. SIFT의 주요 단계는 다음과 같습니다.

  • 스케일 공간 극값 감지: 스케일 불변성을 유지하기 위해 서로 다른 스케일의 이미지에서 키포인트를 감지합니다.
  • 키포인트 현지화: 스케일 공간에서 키포인트의 위치와 크기를 정확하게 결정합니다.
  • 방향 할당: 회전 불변성을 유지하기 위해 각 키포인트에 하나 이상의 방향을 할당합니다.
  • 키포인트 설명자 생성: 키포인트 주변 픽셀의 로컬 그래디언트 정보에서 설명자를 생성합니다.
  • SIFT 특징 추출 후 특징 벡터는 추가 분류 및 인식 작업에 사용할 수 있습니다.

가속 강건 기능(SURF)

SURF는 특징 추출 속도를 개선하도록 설계된 SIFT의 개선된 버전입니다. SURF의 기본 아이디어는 SIFT와 유사하지만 다른 기술을 사용하여 구현됩니다. SURF의 주요 단계는 다음과 같습니다.

  • 스케일 공간 키포인트 감지: Hessian 행렬의 근사치를 사용하여 키포인트를 감지하여 계산 속도를 높입니다.
  • 키포인트 현지화: 스케일 공간에서 키포인트의 위치와 규모를 결정합니다. 방향 지정: 키포인트용
  • 회전 불변성을 유지하기 위해 기본 방향을 지정합니다.
  • 키포인트 설명자 생성: 설명자는 제곱 영역의 Haar 웨이블릿 응답을 기반으로 계산됩니다.
  • SURF의 특징 벡터는 이미지 분류 및 인식 작업에 사용할 수 있으며 계산 속도 및 정확도 측면에서 SIFT보다 성능이 뛰어납니다.

이미지 분류 및 지원 벡터 머신(SVM)

이미지 분류에 사용되는 널리 사용되는 지도 이진 분류 알고리즘은 SVM(Support Vector Machine)입니다. SVM의 핵심 아이디어는 특징 벡터를 고차원 공간의 점으로 취급하고 동일한 클래스에 속하는 모든 예제가 한쪽에 위치하도록 고차원 공간을 나누는 평면/표면을 찾으려는 것입니다. 평면/표면. 이 기사에서는 SVM이 이미지 분류에서 작동하는 방식을 자세히 설명하고 최상의 성능을 위해 SVM을 최적화하는 방법에 대해 설명합니다.

이미지 분류 작업에서 특징 추출은 중요한 단계입니다. 이미지를 특징 벡터로 변환한 후 클래스 레이블을 출력하기 위해 적절한 분류 알고리즘을 선택해야 합니다. 이 기사에서는 널리 사용되는 감독 이진 분류 알고리즘인 SVM(Support Vector Machines)과 이미지 분류에 대한 응용에 대해 중점적으로 설명합니다.

  • 서포트 벡터 머신(SVM)? 서포트 벡터 머신은 기능 공간에서 데이터 포인트를 분리하는 최상의 평면/표면을 찾기 위해 설계된 지도 학습 알고리즘입니다. SVM은 주로 두 클래스 간의 경계를 최대화하는 데 중점을 두어 분류를 보다 안정적이고 신뢰할 수 있게 만듭니다.
  • SVM은 이미지 분류에 어떻게 사용됩니까? 이미지의 고유 벡터는 고차원 공간의 점으로 볼 수 있습니다. SVM은 같은 클래스에 속하는 점이 초평면의 같은 쪽에 있도록 점을 분할하기 위해 초평면을 찾으려고 합니다. 새 기능 벡터의 경우 SVM은 초평면에서의 위치를 ​​기반으로 클래스 레이블을 할당합니다.
  • 서포트 벡터 머신 최적화? 때로는 데이터 포인트를 초평면으로 완전히 분리할 수 없습니다. 이 경우 SVM은 두 클래스에서 초평면의 거리를 유지하면서 많은 훈련 예제가 올바르게 분류되도록 하는 최적화 문제를 해결하여 최상의 초평면을 찾습니다. 이 절충은 매개변수 C에 의해 제어됩니다. C가 작으면 여백이 더 큰 초평면을 선택하는 데 더 중점을 두고, C가 크면 더 많은 예를 올바르게 분류하는 데 더 많은 주의를 기울입니다. C의 최상의 값은 일반적으로 유효성 검사 세트 성능에 의해 선택됩니다.

Support Vector Machine은 이미지 분류 작업에 광범위하게 적용되는 지도 학습 알고리즘입니다. SVM의 핵심 아이디어는 새 데이터 포인트에 클래스 레이블을 할당하기 위해 기능 공간을 분할할 최상의 평면/표면을 찾는 것입니다. SVM 최적화는 가장 큰 분류 마진을 유지하는 것과 교육 예제를 올바르게 분류하는 것 사이의 균형을 찾기 위해 매개변수 C를 조정하여 달성할 수 있습니다.

Supongo que te gusta

Origin blog.csdn.net/qq_20288327/article/details/130464912
Recomendado
Clasificación