본문 바로가기

OpenCV

OpenCV 색 공간 C++, Python 이 튜토리얼에서는 컴퓨터 비전에서 널리 사용되는 색상 공간에 대해 알아보고, 이를 색상 기반 분할에 활용해 보겠습니다. 또한 C++와 Python으로 작성된 데모 코드도 공유합니다. 1975년, 헝가리 특허 HU170062는 43,252,003,274,489,856,000(43경)의 가능성 중 단 하나의 정답만을 찾는 퍼즐을 선보였습니다. 현재 루빅큐브로 알려진 이 발명품은 2009년 1월까지 3억 5천만 개 이상 판매되며 전 세계를 휩쓸었습니다. 며칠 전 친구 마크가 컴퓨터 비전 기반 자동 루빅큐브 풀이기를 만들겠다는 아이디어를 냈을 때 정말 흥미로웠습니다. 마크는 색상 분할을 사용하여 큐브의 현재 상태를 알아내려고 했는데, 그의 색상 분할 코드는 방 안에서는 저녁 시간에는 꽤 잘 작동했지만, 방..
OpenCV 이미지 변환 및 회전 최근 모바일 기기에 내장된 이미지 편집 기능을 통해 이미지를 자르고, 회전하고, 다양한 작업을 할 수 있게 되면서 이미지 편집이 점점 더 인기를 얻고 있습니다. 이 블로그 게시물에서는 OpenCV를 활용한 이미지 변환 및 회전에 대해 살펴보겠습니다. 기본 이미지 변환 작업 이미지 이동과 회전은 이미지 편집에서 가장 기본적인 작업 중 하나입니다. 두 작업 모두 더 넓은 의미의 아핀 변환(Affine transformation)에 속합니다. 따라서 더 복잡한 변환을 배우기 전에 먼저 OpenCV에서 제공하는 함수를 사용하여 이미지를 회전하고 이동하는 방법을 익혀야 합니다. 아래 이미지를 확인해 보세요. 이 이미지가 모든 변환 예제에 사용될 것입니다. 일출, 물, 화물선, 구름이 있는 애니메이션 이미지입..
OpenCV 이미지 자르기 OpenCV를 사용하여 이미지를 자르는 방법을 직접 확인해 보세요. 먼저, 자르는 이유는 무엇일까요? 자르기는 이미지에서 원하지 않는 모든 객체나 영역을 제거하기 위해 수행됩니다. 또는 이미지의 특정 부분을 강조하기 위해 수행되기도 합니다. OpenCV를 사용하여 자르는 데 필요한 특정 함수는 없으며, NumPy 배열 슬라이싱을 통해 이를 수행합니다. 읽어온 모든 이미지는 각 색상 채널에 대해 2차원 배열에 저장됩니다. 자를 영역의 높이와 너비(픽셀 단위)를 지정하기만 하면 됩니다. 그러면 끝입니다! Table of ContentsOpenCV를 사용하여 자르기이미지를 작은 패치로 분할하기흥미로운 응용 프로그램요약 다음 코드 조각은 Python과 C++를 모두 사용하여 이미지를 자르는 방법을 보여줍니..
OpenCV 이미지 크기 조정 OpenCV를 사용하여 이미지 크기 조정에 대해 알아보겠습니다 . 이미지 크기를 조정하려면 지정된 배율 인수를 고려하여 각 축(높이와 너비)을 따라 크기를 조정하거나, 원하는 높이와 너비를 설정하면 됩니다. 이미지 크기를 조정할 때:크기가 조정된 이미지에서도 비율을 동일하게 유지하려면 원래 이미지의 종횡비(즉, 너비 대 높이)를 염두에 두는 것이 중요합니다.이미지 크기를 줄이려면 픽셀을 다시 샘플링해야 합니다.이미지 크기를 늘리려면 이미지를 재구성해야 합니다. 즉, 새로운 픽셀을 보간해야 합니다. 이러한 연산을 수행하기 위해 다양한 보간 기법이 사용됩니다. OpenCV에는 여러 가지 방법이 있으며, 일반적으로 특정 애플리케이션에 따라 선택이 달라집니다. Table of Contents OpenCV imr..
OpenCV 초보자는 여기서 시작하세요. LearnOpenCV는 전 세계 인력에게 컴퓨터 비전과 AI 교육을 제공하는 것을 목표로 합니다. 이 게시물 시리즈는 전 세계에서 가장 인기 있는 컴퓨터 비전 라이브러리인 OpenCV를 시작하는 데 도움을 드립니다. 또한 PyTorch 시작하기 와 Tensorflow/Keras 시작하기도 확인해 보세요 . 초보자를 위한 OpenCV OpenCV를 처음 시작하는 분들을 위해 튜토리얼 시리즈를 제작했습니다. 각 게시물을 살펴보면서 다른 관련 주제와 응용 분야에 대한 자세한 정보를 얻으실 수 있습니다. 이 시리즈를 마친 후에는 OpenCV 웹사이트에서 C++ 및 Python 에 대한 튜토리얼을 많이 확인하시기 바랍니다. OpenCV는 이미지와 비디오 처리를 배우고자 하는 모든 초보자에게 필수적인..
OpenCV를 사용하여 비디오 읽기 및 쓰기 OpenCV에서 비디오를 읽고 쓰는 것은 이미지를 읽고 쓰는 것과 매우 유사합니다. 비디오는 프레임 이라고도 하는 일련의 이미지일 뿐입니다 . 따라서 비디오 시퀀스의 모든 프레임을 반복하고 한 번에 한 프레임씩 처리하기만 하면 됩니다. 이 글에서는 파일 , 이미지 시퀀스 , 웹캠 에서 비디오를 읽고, 표시하고, 쓰는 방법을 보여드리겠습니다 . 또한 이 과정에서 발생할 수 있는 몇 가지 오류를 살펴보고 해결 방법을 이해하는 데 도움을 드리겠습니다. 이 시리즈의 튜토리얼 목록은 다음과 같습니다. 1. OpenCV 초보자는 여기서 시작하세요.2. OpenCV를 사용하여 이미지 읽기, 표시 및 쓰기3. OpenCV를 사용하여 비디오 읽기 및 쓰기4. OpenCV 이미지 크기 조정5. OpenCV 이미지 자..
OpenCV를 사용하여 이미지 읽기, 표시 및 쓰기 - 시리즈 OpenCV를 사용하여 이미지 읽기, 표시 및 쓰기 이미지를 읽고, 표시하고, 쓰는 것은 이미지 처리와 컴퓨터 비전의 기본입니다. 이미지를 자르거나, 크기를 조정하거나, 회전하거나, 다양한 필터를 적용하여 처리할 때에도 먼저 이미지를 읽어들여야 합니다. 따라서 이러한 기본 작업을 숙달하는 것이 중요합니다. 세계 최대의 컴퓨터 비전 라이브러리인 OpenCV에는 다음과 같은 세 가지 내장 함수가 있습니다. 각 함수가 정확히 무엇을 하는지 알아보겠습니다. imread()이미지를 읽는 데 도움이 됩니다imshow()창에 이미지를 표시합니다imwrite()파일 디렉토리에 이미지를 씁니다 시스템에 이미 OpenCV가 설치되어 있다고 가정합니다. OpenCV를 설치해야 하는 경우 아래 관련 링크를 방문하세요. W..
OpenCV 이미지에 글씨 쓰기 - LearnOpenCV 이미지와 동영상에 주석을 달면 여러 가지 목적을 달성할 수 있으며, OpenCV를 사용하면 프로세스가 간단하고 쉬워집니다. 사용 방법을 확인하세요: 데모에 정보 추가객체 감지 시 객체 주위에 경계 상자 그리기이미지 분할을 위해 다양한 색상으로 픽셀 강조 표시 이미지에 주석을 다는 방법을 배우면 비디오 프레임에 주석을 다는 것도 마찬가지로 쉬워 보일 것입니다. 비디오의 각 프레임이 이미지로 표현되기 때문입니다. 여기서는 기하학적 모양과 텍스트로 이미지에 주석을 다는 방법을 보여드리겠습니다. 여기의 모든 예제에서 사용할 이미지입니다. 먼저, 이미지에 주석을 달기 위해 이 코드를 잠깐 살펴보세요. 코드의 각 줄은 여러분이 완전히 이해할 수 있도록 자세히 설명될 것입니다. 파이썬: # Import dep..