작성
·
483
1
안녕하세요 항상 답변 감사드립니다.
RGB를 img[ :, : ,0], img[ :, : , 1], img[:, :, 2] 로 나눠서 출력하면 각 각 R, G, B 위주로 다른 색으로 출력될거라 생각했는데 출력 이미지는 원본과 다르지만 셋이 서로 같더라구요. 왜 그런지 궁금합니다.
답변 7
0
0
0
실제로 올려주신 결과 코드를 돌려보면 이미지 색깔값이 약간씩 다릅니다. 아래 코드를 수행해 보시면 개별 이미지가 default color map기반에서 색깔의 진함이 조금씩 다릅니다.
0
안녕하세요 답변 감사드립니다.
하나만 더 여쭙고 싶습니다.
2차원 행렬이 되어서 일괄적으로 color map 을 설정한다는 부분까지는 이해가 됐습니다만,
채널별로 같은 행, 열 끼리 서로 값이 다를텐데 일괄적인 color map을 적용한다면 결과는 채널별로 비슷하지만 달라야 한다고 생각됩니다.
예를 들자면 0 번째 채널의 1행 1열의 값이 10 이라면 옅은 하늘색이지만 1번째 채널의 1행 1열의 값은 70 이라 진한 파랑색으로 출력되어야 한다고 생각했는데 실제 결과는 둘이 같습니다.
제가 무엇을 놓치고 있는지 궁금합니다.
항상 빠르고 친절한 답변 감사드립니다. (꾸벅)
0
img_rgb[:,:,0]과 같은 처리를 하는 순간에 img_rgb는 3차원 행렬이 아니라 2차원 행렬이 되어 버립니다.
2차원 행렬의 경우에는 matplotlib이 어떤 컬러값을 기준으로 이미지를 표현해야 할지 몰라서 일괄적으로 Color map을 설정해버려서 그렇게 출력이 됩니다. 따라서 2차원 행렬로 표시가 될때는 색깔에 color map 값이 maptlotlib에 주어져야 합니다. 아래 코드로 실행해 보십시요.
0
0