ABOUT ME

-

Today
-
Yesterday
-
Total
-
  • Pseudo Coloring 예제
    컴공지식/컴퓨터비전 2024. 9. 20. 00:59

    Pseudo Coloring회색조 이미지에 인위적으로 색을 입히는 기법이다.

    인간의 눈은 회색조로 표현된 이미지에서 작은 차이를 보기 어렵지만, 색을 입히면 그 차이를 더 쉽게 구별할 수 있다.

    아래 코드는 그런 작업을 어떻게 하는지 보여주고 있다.

     

    int main() {
        Mat gray = imread("xray.jpg", 0);  // "xray.jpg"라는 이미지를 흑백(회색조)으로 불러옴
        Mat color;  // 의사 색상 처리가 된 이미지를 저장할 Mat 변수

        // 흑백 이미지에 컬러 맵을 적용 (COLORMAP_JET을 사용)
        applyColorMap(gray, color, COLORMAP_JET);

        // 흑백 이미지와 의사 색상 처리된 이미지 출력
        imshow("gray", gray);
        imshow("image", color);

        waitKey(0);  // 키 입력을 대기
        return 0;    // 프로그램 종료
    }

     

    applyColorMap(gray, color, COLORMAP_JET); 이 부분이 의사 색상 처리의 핵심이다.

    applyColorMap 함수는 흑백 이미지(gray)에 컬러 맵을 적용해 컬러 이미지(color)로 변환해준다.

    COLORMAP_JET는 OpenCV에서 제공하는 여러 가지 컬러 맵 중 하나다.

    "JET" 컬러 맵은 파란색에서 빨간색까지 색을 입혀서 값이 낮은 부분은 파란색, 값이 높은 부분은 빨간색으로 표시된다.

     

    아무튼 위 코드는 X레이 사진을 더 구분이 잘되게 해주는 코드다.

     

    컬러 맵 종류를 추가로 알아보자면 다음과 같다.

     

    • COLORMAP_JET: 파란색에서 빨간색으로 변하는 그라데이션.
    • COLORMAP_HSV: 색상, 채도, 명도를 기준으로 하는 컬러 맵.
    • COLORMAP_RAINBOW: 무지개처럼 다양한 색을 사용하는 맵.
    • COLORMAP_HOT: 뜨거운 색상 계열(검정 → 빨강 → 노랑 → 흰색).

     

    '컴공지식 > 컴퓨터비전' 카테고리의 다른 글

    엣지 픽셀(Edge pixels)과 엣지(Edges)  (1) 2024.09.25
    White Balancing 예제  (0) 2024.09.20
    HSI 예제  (1) 2024.09.20
    Split/Merge  (0) 2024.09.20
    Color Conversion  (0) 2024.09.20
Designed by Tistory.