크리에이티브 커먼즈 라이선스
Creative Commons License
아스키 아트란 디지털 간색 기법중의 하나인 패터닝의 일종으로 볼 수 있다. 간단하면 말하면 입력 영상의한 필셀에 대응되는 패턴이 아스키 문자의 하나인 것을 말한다. 그럼 패터닝이 무었인지 알아보자. 아래에 설명은 08년 1학기에 내가 제출했던 보고서에서 주워왔다.

------------------------------------------------------------------------------------------------------
patterning

 패터닝은 출력 장치의 공간 해상도가 원시 영상보가 좋을 때 흔히 사용되는 기법이다. 각색 셀의 해상도가 화소해상도가 같다고 할지라도, 화소 하나는 16개의 도트로 표현된다.

사용자 삽입 이미지

따라서 한 픽셀과 대응되는 16개의 도트를 입력 화소와 비슷하게 보일 수 있도록 어떤 패턴을 갖도록 해야할 필요가 있다. 이때 패턴의 선택이 잘 못되면 의도하지 못한 영상을 출력하게 된다. 한 명도값을 어떤 패턴으로 프린트되도록 셜정하였다면 이보다 강한 명도값은 그 패턴에서 설정된 셀들을 모두 포함하는 패턴을 가져야 한다.이를 성장 연속 growth sequence 라 한다.

 하나의 블록(16개의 도트)는 각각의 유일한 명도값을 표현할 것임으로 이를 위해서 입력 영상의 화소값을 양자화할 필요가 있다. 다음과 같은 경우 입력 화소의 값을 15(255 / 17)로 나누어 줌으로 쉽게 해결할 수 있다. 이로서 화소값은 0에서 17까지의 값을 갖게 된다. 출력되는 영상은 양자화된 화소를 하나의 출력 패턴에 사상 시킴으로 생성된다.

사용자 삽입 이미지


설명 끝
-----------------------------------------------------------------------------------------------------

아스키 아트의 구현은 입력 영상의 한 픽셀의 밝기값에  대응되는 패턴(아스키 문자)으로 대치하는 것임으로 패터닝 기법으로 쉽게 구현할 수 있다.

 패터닝 기법은 입력 영상의 한 픽셀을 4x4(내 구현에서는 7x7)의 패턴으로 대치함으로 출력 영상은 가로, 세로 4배(7배)로 크기가 커진다. 출력 영상의 크기를 입력 영상과 같게 하기 위해서는 입력 영상을 축소 한 상태에서패터닝을 적용하면 된다. 이를 위해서 subsampling등의 여러가지 기법을 적용할 수 있다.

위의 설명에서는 밝기값이 0~255 사이의 값을 갖고 출력 패턴이 17가지 임으로 15로 입력 영상의 밝기값을 나누 줬지만 출력 패턴이 17가지보다 많거나 적을경우 이를 적절히 조절하여 구현하면 된다.

마지막으로 출력 영상이 8비트 그래이 일경우 사용한 아스키 문자 패턴을 소개하고 포스팅을 마치겠다. 이 패턴은 노가다를 통해서 구해냈다. -_-;;

@GE9DX5WKkyezui:,.

결과물은 대략 이렇게 나온다

'튜토리얼 > 아스키아트' 카테고리의 다른 글

패터닝을 이용한 아스키 아트의 구현  (2) 2008/06/25

댓글을 달아 주세요

  1. Favicon of http://eufonius.tistory.com BlogIcon prismatic 2008/10/11 18:27  댓글주소  수정/삭제  댓글쓰기

    기회 되면 꼭 한번 해 보고 싶은...... ㅠㅜ

  2. 형들아 2011/03/08 22:06  댓글주소  수정/삭제  댓글쓰기

    프갤에도 차냥글 올렸지만 항상 신경써주셔서 감사합니다.