4. 색종이 컵으로 이미지 압축 게임하기

1이미지 압축 알아보기

앞에서 우리는 컴퓨터에서 보이는 그림은 픽셀로 저장되고, 이 픽셀들이 합쳐져서 하나의 그림으로 보인다는 것을 알았다. 즉, 컴퓨터의 화면을 확대하면 아주 작은 정사각형 모양의 점들로 이루어져 있고, 이 점들 하나하나를 픽셀이라고 하며, 이러한 픽셀들이 합쳐져서 그림이나 글자의 형태를 가지게 된다는 것을 알 수 있었다.

컴퓨터의 모든 정보는 0과 1로 표시되기 때문에 컴퓨터는 데이터를 압축했다가 다시 풀어쓰기를 반복하며, 데이터 저장 공간을 효율적으로 사용하고 이 과정에서 데이터의 정보는 달라지지 않다는 것을 활용하여 이미지 역시 압축을 해서 저장 공간을 효율적으로 사용하고 이 과정에서 데이터의 정보는 달라지지 않다는 것을 의미한다.

아래의 그림은 전체 11개의 픽셀을 활용해서 이미지를 만들었다. 이를 데이터로 표시하면 아래와 같다.


이미지. 5x5 픽셀판에서 빨간색, 초록색, 파란색 전체 11개의 픽셀을 활용해서 만든 이미지를 색상 기준 3개로 압축한 이미지.

위의 데이터를 압축하면 25개의 픽셀을 3개로 압축해서 나타낼 수 있다.

이렇게 이미지를 압축하면 픽셀의 용량은 그대로지만 저장할 수 있는 공간이 늘어나기 때문에, 데이터 저장용량을 확대할 수 있고, 정보의 전송을 간편하게 해줄 수 있는 장점이 있다.

2색종이 컵을 활용해 이미지 압축 게임하기

[활동목표]
색종이컵으로 이미지 압축 게임을 할 수 있다.
[활동안내]
이미지. 색종이컵으로 이미지 압축 게임을 하는 동영상의 스크린샷
[활동]
이미지. 두 명의 학생이 색종이컵으로 이미지 압축 게임을 하는 모습의 그림
성공하면 다음과 같은 모습으로 된다.
[준비물]
여러 가지 색으로 된 종이컵 (1인당 1set)
[활동팁]
1.사전에 종이컵을 겹쳐보는 연습을 한 다음 본 게임을 하면 좀 더 쉽게 할 수 있다.
2.종이컵 겹치는 활동이 익숙해지면, 종이컵의 수와 색상의 수를 차츰 차츰 늘려서 게임 난이도를 조절해가면서 구성하면 재미있게 할 수 있다.
3.활동이 어렵거나 겹치는 활동이 어려운 학생의 경우 종이컵의 수와 색상의 수를 줄여서 성공의 기쁨을 먼저 맛볼 수 있도록 한다.

3보조활동

[활동목표]
색종이컵으로 이미지를 만들고 압축할 수 있다.
[보조활동]
이미지. 빨간색, 남색, 검은색의 종이컵을 놓아 가위 모양을 만든 모습
1.색종이컵으로 이미지를 만들 수 있도록 한다.
2.색종이컵으로 이미지를 만드는 활동이 익숙해지면 천천히 정확하게 압축할 수 있도록 한다.
[준비물]
이미지판, 색종이컵
[활동팁]
학생의 수준에 따라 색종이컵으로 만들 수 있는 이미지의 크기(3x3, 4x4, 5x5 등등) 수준별 활동을 한다.

4-1
색종이 컵으로 이미지 만들고 압축하기

색종이컵으로 이미지를 만들고 같은 색으로 압축을 해보자.

<보기>
이미지. 빨간색, 남색, 검은색의 종이컵을 놓아 가위 모양을 만든 모습

이미지. 빨간색, 노란색, 분홍색, 남색의 종이컵을 놓아 비행기 모양을 만든 모습

이미지. 노란색, 초록색, 검은색의 종이컵을 놓아 나비 모양을 만든 모습

더 알아보기

1컴퓨터는 왜 압축을 할까?

여러분이 공책을 다 쓰게 되면, 공책을 새로 사고 다 쓴 공책은 집에 잘 보관할 수 있다. 그러나 컴퓨터는 데이터 저장 공간을 다써버리게 되면 여러분처럼 학교 앞 문구점에서 데이터 저장 공간을 사서 사용할 수 있는 것이 아니다. 컴퓨터에서 0과 1을 1비트(bit)라고 하고, 글자 또는 숫자 등은 1비트 8개로 이루어진 1바이트(byte)로 표현한다. 일반적으로 4MB의 메모리를 가지고 있다. 1MB는 1,000,000바이트이기 때문에 4MB는 4백만 바이트의 저장 공간이 있는 것이다. 많은 저장 공간이 있기는 하지만 컴퓨터는 데이터 저장 공간을 늘 효율적으로 쓰기 위해 노력한다. 모든 정보는 0과 1로 표시되기 때문에 컴퓨터는 데이터를 압축했다가 다시 풀어쓰기를 반복하며 데이터 저장 공간을 효율적으로 사용하고 이 과정에서 데이터의 정보는 달라지지 않는다.

기본적인 데이터 압축 체계는 핵심단어 부호화 방법을 사용하는데, 영어의 'the'와 같이 자주 사용되는 단어를 2바이트의 기호로 변화시키는 것이다. 더 발달된 기술에서는 자주 사용되는 문장 형태들을 분석하고 확인하여 간단한 문자나 기호로 바꾸어준다. 예를 들면, 'going to'에서 'ing to'를 '$'로 바꾸어줌으로써 문장 블록의 크기를 상당히 줄일 수 있다. 이러한 압축 기술로, 문자나 기호를 부호화 하는데 8비트 미만의 문자열을 사용하고, 가장 자주 쓰이는 문자들은 가장 적은 비트로 나타낼 수 있다. 다양한 길이의 문자열을 사용하는 방법에서 성공적으로 압축을 해독하기 위해서는 문자의 끝을 나타내는 부분을 분명하게 인식할 수 있어야 한다. 허프만(Huffman) 부호화 방식은 가장 널리 사용되는 방법 중 하나다. 반복되는 문자들을 포함하고 있는 데이터의 압축에는 런렝스 부호화 방식이 사용된다. 이 방식에서는 반복되는 단위를 1회만 저장하고, 반복 횟수를 표시한다.

데이터 압축의 장점으로는 데이터 저장용량을 확대할 수 있고, 팩스나 모뎀을 통한 정보의 전송을 간편하게 해주며, 정보에 담긴 의미를 암호화하거나 숨길 수 있다는 것 등이 있다.