[시리즈] 십자수 변환 프로그램에 디더링 적용하
· 십자수 변환 프로그램에 디더링 적용하기

의도치 않게 시리즈가 되어버렸다


정보를 조금 더 찾아보니 개선 가능한 부분이 있는 것 같다


지난 게시물에서 적용했던 알고리즘은 플로이드 스타인버그 디더링이라는 알고리즘인데,


X에서 색상 변환을 완료한 후 (원래 색상-변환된 색상)의 오차만큼을 위에 있는만큼 주변 픽셀로 각각 7/16, 3/16, 5/16, 1/16만큼 전이시킨다


그런데 이후에 나온 알고리즘으로 시에라 디더링이 있다


원리는 플로이드 스타인스버그와 비슷하나 오차가 확산되는 범위가 훨씬 늘어났다


이론적으로는 더 부드러운 디더링이 되어야.. 할 것이다



바로 짜봤다


아 맞다 예시 사진을 올리기 전에


지난 글에서는 픽셀퍼펙트로 400% 확대를 먹였는데 그러면 실제 보는것보다 좀더 모양새가 안 이뻐지는거같다


그래서 이번에는 비교짤을 원본을 올리되 배율만 250%로 해서 올려봄



생각보다.. 시에라가 더 거칠어진거같다


움짤로 보면 아래와 같다




그리고 지나가던 친절하신 분이 감마 기반 디더링을 해보면 품질이 조금 더 올라간다고 댓글을 달아줘서 확인해봤다



그렇다고 한다

바로 적용해봄




결과는 움짤만 올린다(단독으로 보면 티가 잘 안 나더라)





두 움짤 모두 밝은 부분은 더 밝아지고 어두운 부분은 (특히) 더 어두워져서 명암 대비가 살아나는 것 같다


한가지 아쉬운 부분이라면 그림자(다리 아래부분) 디테일이 아예 뭉뚱그려져서 사라져버렸다는 점...?


아직 더 고민이 필요할거같다


아래는 여러 개 적용해본 샘플