일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
1 | 2 | 3 | 4 | 5 | 6 | 7 |
8 | 9 | 10 | 11 | 12 | 13 | 14 |
15 | 16 | 17 | 18 | 19 | 20 | 21 |
22 | 23 | 24 | 25 | 26 | 27 | 28 |
29 | 30 | 31 |
- web3@1.2.8
- macbook
- MAP
- Spark
- OpenCV
- Ethereum
- solidity
- geth
- Histogram
- docker
- node
- jenv
- Apache Spark
- BlockChain
- 이더리움
- lambda
- Greeter
- bigdata
- nodejs
- python3
- Python
- pyspark
- apache-spark
- word count
- HelloWorld
- web3
- stopwords
- remix
- RDD
- 블록체인
- Today
- Total
이것저것 프로그래밍 정리(Macbook)
히스토그램(평활화(equalize)) 본문
https://parkaparka.tistory.com/24
위 링크의 글은 기본 히스토그램 생성과 히스토그램을 정규화해주는 글이니 참고 하실 분은 참고 하시길 바랍니다.
노멀라이즈 같은 경우는 한곳에 분포가 집중되어 있는 경우 효과적이지만, 집중 된 부분에서 벗어나면 효과가 없습니다. 이럴때 equalize, 평활화가 필요합니다.
평활화는 히스토그램을 평평하게 만들어 주는 연산으로서, 영상화소를 재배치 해주는 역할을 합니다. 따라서 명암 대비를 개선하는 데 효과적입니다.
평활하를 한다고해서 영상이 시각적으로 좋아지는 것이 아니기 때문에 영상 처리의 연산을 할때는 분별력을 갖고 필요할것 같은 곳에만 영상 처리 연산을 적용하는 것이 중요합니다.
위 사진을 이퀄라이즈를 적용시켜 보도록 하겠습니다.
이미지를 읽어온 이후 cv2.equalizeHist() 함수를 이용해 히스토그램을 평활하 시켜 준 이후 원본 이미지와 평활화된 이미지의 히스토그램과 누적 히스토그램을 생성한 이후 시각화 시켜준 모습입니다.
왼쪽은 원본 사진, 오른쪽은 equalize 시킨 사진입니다.
결과 사진을 보면 밝기가 밝아진 것을 확인 할 수 있습니다.
이번에는 흑백 사진이 아닌 컬러 이미지에 대해 equalize를 적용시켜 보도록 하겠습니다.
밝기 값을 개선하기 위해서는 BGR 컬러 스페이보다는 YUV 나 HSV 컬러 스페이스로 변환해서 밝기에 해당하는 채널만 연산하여 이미지에 적용시키는 것이 효과적입니다.
다음 이미지를 YUV 컬러 스페이스로 변환해서 equalize를 적용시켜 보도록 하겟습니다.
위 사진은 equalize를 시킨 결과물입니다.
위 컬러 이미지의 equalize에서 알수 있듯이 히스토그램 평활화를 한다고 해서 시각적으로 좋아지는 것이 아니라, 시각적으로 느낌이 나빠질 수 도 있기 때문에, 분별력을 갖고 활용 여부를 결정하는 것이 중요합니다.
이번 글에서는 히스토그램의 equalize(평활화)에 대해 알아 보았습니다.
'machine vision' 카테고리의 다른 글
히스토그램(히스토그램 생성, 정규화(normalize)) (0) | 2020.08.21 |
---|