😛 imread 함수의 옵션으로 대표적인 것들은 무엇인가요?
imread()는 이미지를 불러오는 함수이며, 옵션은 '어떤 방식'으로 불러올지를 의미합니다.
그 방식으로는 크게 세 가지의 종류가 있는데, 아래와 같습니다.
- imread_color
- imread_grayscale
- imread_unchanged
앞서 언급한 적 있는 함수들인데, 추가적으로 한 가지 더 소개할 예정입니다.
아래 사진은 옵션별 결과를 확인하기 위한 원본 이미지입니다!
😛 imread _color
imread_color란, 이미지를 컬러로 읽어오고 투명한 부분을 무시합니다.
보다 정확한 의미로는 이미지를 컬러로 받아오되, BGR 색으로 읽어냅니다.
opencv에서는 RGB(Red Green Blue)를 BGR로 표현하며, 의미는 다르지 않습니다.
실행 결과는 아래와 같습니다.
imread_color는 투명한 부분이 있는 이미지를 제외하면 거의 원본 이미지와 같다고 볼 수 있습니다.
😛 imread _grayscale
imread_grayscale이란, 이미지를 흑백으로 출력합니다.
이미지를 흑백으로 읽어오게 되면, 이미지에 대한 연산량도 감소합니다.
또한 특정 대상에 대한 가장자리 감지가 용이해집니다.
실행 결과는 아래와 같습니다.
😛 imread _unchanged
imread_unchanged는 imread_color의 특징을 가지고 있으나 조금 다릅니다.
imread_color는 투명한 부분을 제외하고 BGR형식으로 색을 읽어냈다면 이 옵션은 투명한 부분도 읽어냅니다.
정확히는 이미지 파일을 'Alpha channel'까지 포함하여 읽습니다.
Alpha channel이란, 이미지의 투명도에 관여하며, 이미지 색상 3채널(BGR)에 대해 추가된 채널을 말합니다.
추가한 Alpha channel은 네 번째 채널이 되며 각 픽셀의 투명도를 지정할 수 있습니다.
따라서 Alpha channel은 색상 채널과 동일한 차원이 되고 이미지는 아래와 같이 구성됩니다.
하지만 Alpha channel에 대한 정보가 없다면 color와 다르지 않습니다.
실행 결과는 아래와 같습니다.
위의 사진의 경우 이미지에 대해 Alpha channel의 정보가 없기 때문에
imread_color와 결과가 같습니다.
😛 imread _anycolor
imread_anycolor는 언급하지 않았지만 imread_color와는 달리
모든 색상을 출력 가능하다는 점이 있어 적어보았습니다.
하지만 imread_anycolor가 imread_color의 BGR이
선택한 색상을 고른다면 큰 차이를 느낄 수 없다는 점이 있습니다.
'Python' 카테고리의 다른 글
[코딩 기초 트레이닝] 대소문자 바꿔서 출력하기 (0) | 2024.09.11 |
---|---|
[Python] Opencv로 이미지는 어떻게 불러오나요? (0) | 2023.04.24 |
[Python] Opencv 개발환경 구축은 어떻게 하나요? (2) | 2023.04.22 |
[Python] Opencv는 어떤 건가요? (4) | 2023.04.21 |