460 likes | 1.08k Views
4 장 이미지와 그래픽. Understanding of Multimedia. 색상. 색 빛의 스펙트럼의 조성차에 의해서 성질의 차가 인정되는 시감각의 특성 스펙트럼 파장 순으로 나눈 빛의 배열 이 성질에 의해 빛의 색이 결정됨. 색상. RGB 색상 Red, Green, Blue 의 약자로서 빛의 삼원색인 빨강 , 녹색 , 파란색이 기본이 되는 컬러 모델 이 세 가지 색의 혼합으로 색을 표현 여러 가지의 색이 더해질수록 흰색에 가까워지며 , 빛이 전혀 없을 때에는 검은색을 나타냄
E N D
4장 이미지와 그래픽 Understanding of Multimedia
색상 • 색 • 빛의 스펙트럼의 조성차에 의해서 성질의 차가 인정되는 시감각의 특성 • 스펙트럼 • 파장 순으로 나눈 빛의 배열 • 이 성질에 의해 빛의 색이 결정됨
색상 • RGB 색상 • Red, Green, Blue의 약자로서 빛의 삼원색인 빨강, 녹색, 파란색이 기본이 되는 컬러 모델 • 이 세 가지 색의 혼합으로 색을 표현 • 여러 가지의 색이 더해질수록 흰색에 가까워지며, 빛이 전혀 없을 때에는 검은색을 나타냄 • 가산 원색 모델(Additive Primary Model)이라고도 함 • RGB 모델의 색상 모델과 가산 혼합
색상 • CMYK 색상 모델 • 종이에 프린트된 잉크에 기초한 색상 구현원리를 사용하며, 청록색(Cyan), 심홍색(Magenta), 노란색(Yellow), 검은색(Black)의 네 가지 색상을 기본으로 함 • 네 가지 물감이 혼합되면 모든 색상을 흡수하여 검은색을 나타내기 때문에 감산 원색 모델(Subtractive Primary Model)이라고도 함 • 프린트 출력물과 밀접한 관련이 있기 때문에 RGB 모델보다 나타낼 수 있는 색의 수가 적지만 사용됨
색상 • CMYK 색상 모델 • CMYK 색상 모델과 RGB 색상 모델 간의 변환 관계 • 포토샵과 일러스트레이터에서의 색상 지정
색상 • HSB(Hue, Saturation, Brightness) 색상모델 • 색조(Hue) • 물체로부터반사되거나 물체를 통해 전달되는 빛의 파장으로 순수한 색을 나타내기 위한 컬러 특성 • 채도(Saturation) • 색도라고도하는데 색상의 강도 또는 농도를 표현하는 것 • 명도(Brightness) • 아래그림에서 Value로 표시되는 값으로, 색상의 상대적 밝기 또는 어둡기를 나타냄
색상 • YUV 모델 • 텔레비전 방송에 사용되는 방식으로서 인간의 눈이 색보다 밝기에 민감하다는 사실에 기반을 두어 만들어진 것 • 색을 밝기(luminance)인 Y와 색상(chrominance)인 U, V로 구분함 • Y값은 오류에 민감하므로 색상 원소(U, V)보다 상위 대역폭으로 코딩하며 전형적인 Y:U:V의 비율은 4:2:2임 • RGB 모델과의 관계
색상 • YIQ 모델 • YUV 모델과 마찬가지로 텔레비전 방송에 사용되며 YUV 모델과 유사하지만 NYSC신호로 인코딩하여 YUV모델과 약간 다른 공식을 사용함 • RGB 모델과의 관계
채널과 색상 보정 • 채널 • 이미지를 구성하는 색상 주파수 • 이미지가 그레이 이미지일 때에는 회색의 정도만을 나타내면 되기 때문에 1채널을 사용 • RGB 색상 모델은 3채널 • 알파 채널 • 투명도를 나타내는 채널 • 색상 보정 • 디스플레이 장치의 출력 특성을 기준 색상 또는 다른 장치에 맞게 설정하는 과정 • 인쇄할 색상을 정확하게 표현하고자 널리 사용됨 • 포토샵을 이용한 색상 보정 방법 [교재 98-99, Step by Step] 참고
이미지 • 픽셀(Pixel) • “Picture Element”의 합성어로서 그림을 구성하는 기본 요소가 되는 단위 • 픽셀을 활용하여 이미지는 그림을 픽셀 단위로 나타내는 비트맵 방식으로 표현 • 비트맵 이미지는 픽셀을 많이 사용하여 표현할수록 이미지를 더욱 더 자세하게 나타낼 수 있지만 저장히기 위한 용량이 커기게 됨 • 픽셀을 적게 사용하여 표현할수록 이미지의 선명도는 떨어지지만 저장하기 위한 용량은 줄일 수 있음 • “X”의 비트맵 표현
이미지 • 해상도(Resolution) • 스캔해상도, 화면 해상도, 프린터 해상도가 있는데 데이터의 양이나 컬러 정보를 나타내는 것 • 단위는 dpi(dot per inch)로서 단위 길이당 표시할 수 있는 점의 수, 즉 픽셀의 수를 나타냄 • 스캔 해상도 • 이미지를 스캔할 때 해상도를 지정하여 스캔할 수 있음 • 화면 해상도 • 표준적으로 평균 72dpi ~ 75dpi 정도의 해상도를 가짐 • 프린터 해상도 • 보통 600dpi
이미지 • 이미지처리 • 그림을 컴퓨터 기술로 다루는 학문 분야 • 이미 획득하였거나 만들어진 이미지를 조작하는 것 • 2차원 데이터를 다룸 • 이미지 처리 알고리즘의 분류 • 포인트 처리 • 화소의 원래 값이나 위치를 기반으로 하여 화소 값을 변경 • 영역 처리 • 화소의 원래 값과 이웃하는 화소의 값을 기반으로 하여 화소 값을 변경 • 기하학적 처리 • 화소들의 위치나 배열을 변화시킴
포인트 처리(Point Processing) • 이미지의밝기 값 조절 • 그레이 이미지는 화소 값이 0부터 255까지의 레벨로 분류되어 있는데, 이미지를 밝게 하려면 흰색인 255에 가깝게 하면되고, 어둡게 하려면 0에 가깝게 하면됨 • 원본 이미지와 반전된 이미지
포인트 처리(Point Processing) • 히스토그램(Histogram) • 이미지의 가장 중요한 정보를 담은 자료이며, 이미지의 명암 값 프로필을 보여 주고자 사용되는 도구 • X축은 0~255까지의 픽셀의 밝기를 나타내고 Y축은 픽셀의 빈도 수를 나타냄 • 히스토그램 평활화 • 명암 값 분포를 새로 생성해 주는 것으로서 아래와 같은 과정을 거침 • 히스토그램을 생성 • 히스토그램의 정규화된 합을 계산 • 입력 이미지를 변형하여 결과 이미지를 생성
포인트 처리(Point Processing) • 명암대비 & 스트레칭 • 명암대비 • 밝거나 어두운 화소의 분포를 말하는데 대개 그레이 스케일 이미지(gray scale image)는 낮거나 높은 명암 대비를 갖게 됨 • 낮은 명암 대비의 히스토그램의 분포를 보면 어느 한쪽에 치우쳐 있게 됨 • 스트레칭 • 이미지의 밝기 분포를 최대한 활용하도록 히스토그램을 길게 당기는 것 • 이미지의 품질을 개선할 수 있음 • 기본적인 명암대비 스트레칭
이미지의 디지털화 • 이미지의 디지털화 • 광학 카메라로 얻은 이미지나 스캔하기 위한 원본 텍스트 등은 아날로그 데이터이기 때문에 컴퓨터에서 처리할 수 있는 디지털 데이터로 변화해야 함 • 표본화 과정 • 연속적인 아날로그 데이터를 일정한 간격으로 나눔 • 양자화 과정 • 각 픽셀에서의 값을 일정한 범위 내로 나타내기 위한 과정
이미지의 디지털화 • 표본화(Sampling) • 연속적인아날로그 데이터를 일정한 간격으로 나누어 즉, 픽셀 단위로 나누어 그 값들을 평균 등의 방법으로 각 픽셀 단위로 표현하는 것 • 표본화의 예
이미지의 디지털화 • 양자화(Quantization) • 표본화에서표본화할 이미지의 위치를 결정한 후에 원본 이미지의 연속적인 값을 이산 값으로 변환하는 것 • 입력 값을 최대, 최소값의 사이를 임의의 수로 나누고 각 구간의 대표값을 할당 • 양자화로 표현하는 범위가 한정되어 있기 때문에 연속 값과 이산 값의 차이가 발생할 수 있는데 이러한 것을 양자화 에러(Quantization Error)라 함 • 양자화의 예
이미지 필터링 • 이미지 필터링 • 원본 이미지에 임의의 연산을 하여 원하는 효과가 반영된 이미지를 만들어 내는 것 • 이미지를 만들 때 주변 환경의 영향이나 장비의 영향에 의해 실제와 다른, 즉 잡음이 들어갈 수 있는데 필터링을 사용하여 이러한 잡음을 제거할 수도 있음 • 대표적인 필터링 기법 • 블러링(Bluring) • 에지 검출(Edge Detection) • 평균 필터(Mean Filter)
이미지 필터링 • 블러링(Bluring) • 기본적으로 영상의 잡음(noise)를 제거하려고 사용함 • 영상의 세세한 부분을 제거하는데 쓰이는 기법으로서 마스크(Mask)를 이용하여 수행됨 • 마스크의 크기에 따라 다음과 같이 나타낼 수 있음
이미지 필터링 • 블러링(Bluring) • 블러링 결과는 이웃 화소들과 평균화한 결과라는 특징을 가짐 • 극단적인 값을 제거할 수 있으나 영상의 대비를 약화시키는 단점을 가짐 • 5*5 마스크는 3*3 마스크 연산에 비하여 노이즈를 더 잘 제거할 수 있으나 더욱더 영상을 흐리게 만듦
이미지 필터링 • 에지 검출(Edge Detection) • 에지는밝기가 낮은 값에서 높은 값으로, 이와 반대로 변화는 지점에 존재하는 부분을 가리킴 • 영상 안에 있는 객체의 경계(boundary)를 가리키는 것으로서 모양(shape), 방향성(direction)을 탐지할 수 있는 등 여러 가지 중요한 정보가 들어 있음 • 에치 추출은 영상분할(image segmentation)의 첫 단계로서, 다양한 방법들이 있는데 이는 회선기법을 이용하여 수행될 수 있음
이미지 필터링 • 평균 필터(Mean Filter) • 이미지의각 픽셀의 값을 임의의 윈도우 크기를 설정하여 그 윈도우 범위의 픽셀 값들을 평균으로 계산하여 결정하는 것 • 주변의 픽셀 값들을 평균하여 각 픽셀의 값을 결정하기 때문에 전체 이미지에 대해 이 필터를 적용할 때 이미지가 번진 것과 같은 효과를 낼 수 있음 • 9*9와 15*15 윈도우를 사용하여 평균 필터를 적용한 예
이미지의 압축 • 이미지를 압축하는 기법 • 무손실 기법 • 손실되는 데이터가 없어서 압축한 이미지를 복원하였을 때 압축하기 전과 이미지가 완전히 일치하는 기법 • 손실 기법 • 압축할 때 데이터가 손실되기 때문에 압축한 이미지를 복원할 때 압축하기 전의 이미지와 일치하지 않음 • 압축하기 전과 압축한 데이터의 차이를 사람이 거의 느끼지 못할 정도만 데이터를 손실하기 때문에 데이터의 양을 줄이는 측면에서 많이 사용되는 기법
이미지의 압축 • GIF • LZW(Lemple-Ziv-Welch) 알고리즘을 사용하여 이미지를 압축 • LZW는 RLE(Run Length Encoding)이라는 기법을 사용한 알고리즘으로써 같은 값이 연속되어서 몇 번 나타나는지를 표현함으로써 압축하는 방식 • 수평방향으로 스캔하여 압축을 하기 때문에 수평방향으로 같은 색을 가지고 있을수록 압축효율이 높아지지만 반대의 경우 압축하고 난 후의 이미지의 용량이 커지게 됨 • GIF 압축의 예
이미지의 압축 • JPEG(Joint Photographic Experts Group) • 특별히 사진의 압축을 위한 알고리즘으로서, 손실 압축기법과 무손실 압축기법을 사용한 두 가지의 기법을 따로 정의하고 있지만 일반적으로 손실 압축기법을 사용 • 색상 모델 변환, 블록화, DCT 변환, 양자화, 엔트로피 부호화의 절차를 거쳐 수행하게 됨 • JPEG 압축 및 복원의 전체 과정
이미지의 압축 • JPEG(Joint Photographic Experts Group) • 색상 모델 변환 • 이미지의 RGB 색상 모델을 YIQ 색상 모델로 변환하여 사용 • 인간의 시각이 색상보다는 화상의 밝기에 더욱 민감하기 때문에 Y를 좀 더 정교하게 나타내기 위함 • 블록화 • 전체 이미지를 8*8 블록으로 블록화시켜 압축을 수행하기 때문에 Y, I, Q에 대한 각각의 성분을 8*8블록으로 나눔 • DCT 변환 • 블록 단위 별로 DCT연산 수행 • 64개의 DCT계수를 얻게 되는데 이 중에서 가장 처음에 얻어지는 것은 DC(직류) 성분이고나머지 63개는 AC(교류) 성분 • DC와 AC는 따로 나누어 독립적으로 양자화 과정을 거치게 됨
이미지의 압축 • 양자화(Quantization) • 인간이감지하지 못할 정도의 범위 내에서 DCT계수를 정수로 반올림하는 과정 • 미리 정의된 양자화 테이블을 사용하여 DCT 계수를 각각 나누고 그 결과를 반올림하여 계산 • 이미지의 왼쪽 위쪽으로 갈수록 주파수가 낮아지고 오른쪽 아래로 갈수록 주파수가 높아지는데 낮은 주파수 부분에 있을수록 0이 아닌 값이 되고 높은 주파수 부분의 값을 거의 0이 됨 • 엔트로피 부호화 • 양자화된 DCT 계수를 공간적 특성에 따라 더욱 압축하는 과정 • DCT계수를 지그재그 형태로 스캔하여 낮은 주파수에서 높은 주파수 순으로 주로 허프만 코딩(Huffman Coding)을 사용하여 부호화
이미지의 압축 • 엔트로피 부호화 • DCT 계수의 지그재그 스캔 • 허프만 코드 테이블
이미지 처리 응용분야 • 과학과 우주 • 영화 • 종이 없는 사무실 • 의료 산업 • 머신 비전(Machine Vision) • 법(Law) 분야 등등
2D 그래픽 • 2D 그래픽 • XY 2차원 평면상에 어떠한 객체를 표현하는 것으로써 3D 그래픽보다는 계산량이 적기 때문에 간단하고 빠르게 처리할 수 있음 • 2차원 그래픽을 구성하는 기본 도형으로는 직선, 곡선, 나선, 사각형, 원, 타원, 다각형 등 여러 가지 2차원 도형이 있음 • 2D 그래픽을 이용한 게임
2D 그래픽 • 디더링(Dithering) • 컴퓨터그래픽에서 출력 장치의 해상도를 초과하는 다계조 색의 이미지를 근사하게 생성하고자 사용되는 기술 • 이미지의 각 면을 다른 계조 색의 픽셀 집합으로 처리하는 기술에 의존 • 하프톤 이미지(Halftone Image)와 비슷한 이미지를 생성 • 저해상도에서 컴퓨터 도형 처리의 사실감을 높이고 매끄럽지 못한 계산 모양으로 울퉁불퉁한 윤곽선이나 대각선을 눈에 띄지 않게 하려고 사용 • 원본 이미지와 디더링 이미지
2D 그래픽 • 앤티앨리어싱(Anti-aliasing) • 앨리어싱(Aliasing) • 디지털영상신호의 불충분한 표본화나 부적절한 필터링에 의해 나타나는 전형적인 영상 신호의 결함 • 앤티 앨리어싱(Anti-aliasing) • 영상의 가장자리가 톱니모양으로 들쭉날쭉해지는 계단효과를 없애기 위한 것 • 일러스트를활용한 2차원 이미지 생성 [교재 116-119 Step by Step 참조]
3D 그래픽 • 3D 그래픽 • 공간의 표현을 위해 2D 그래픽에 깊이 축을 추가하는 것을 의미하며 그림을 실감나게 입체적으로 표현하는데 목적을 두고 있음 • 3차원 그래픽을 만들려면 객체를 모델링(Modeling)하고 2차원 평면에 투영(Projection)하고, 렌더링(Rendering)하는 과정을 거침 • 3D 그래픽을 이용한 게임
3D 그래픽 • 모델링(Modeling) • 3차원 그래픽에서 하나의 장면(scene)을 렌더링 하려면 장면에 포함되는 모든 객체를 만들어야 함 • 객체들을 3차원 좌표계의 점, 선, 다각형 등을 사용하여 만들어 내는 과정을 모델링(Modeling)이라 함 • 3D Studio Max 7을 사용하여 헬리콥터를 모델링한 예
3D 그래픽 • 투영(Projection) • 3차원 객체를 2차원 평면인 스크린에 보여주려면 투영(Projection)을 해야 함 • 평행투영(Orthogonal Projection) • 평행하게 깊이 좌표를 없애서 한 평면에 그대로 투영하는 것으로 멀리 떨어져 있는 부분과 가까이 있는 부분의 크기가 같게 보임 • 원근투영(Perspective Projection) • 실제 사람의 눈과 같이 똑같은 크기의 객체라도 멀리 있는 것은 작게 보이고 가까이 있는 것은 크게 보이는 효과를 내는 투영
3D 그래픽 • 렌더링(Rendering) • 빛이나색과 같은 3차원적인 재질을 추가하여 현실감을 더하는 것 • 그래픽이 등장한 초기에는 컴퓨터의 성능이 좋지 않았기 때문에 빠른 렌더링을 위해 보이지 않는 면을 그리지 않는 은면제거(Culling)에 초점을 맞춰 왔음 • 컴퓨터의 성능이 향상됨에 따라 빛의 효과를 계산해내는 쉐이딩(Shading), 텍스처 매핑(Texture Mapping)에 초점을 맞춰 사실적으로 보이는데 중점을 두고 있음
DirectX • DirectX • 게임을만들거나 멀티미디어 응용프로그램을 만들기 위한 하위 레벨의 API(Application Programming Interface) • 2D 그래픽과 3D 그래픽, 사운드, 입력 등을 포함하고 있기 때문에 사용자와 상호작용을 하면서 사용자에게 화려함을 보여줘야 하는 게임이나 멀티미디어 응용프로그램에 적합한 API • DirectX와 OpenGL의 좌표계
DirectX • DirectX • Direct3D의 윈도우 응용프로그램과 GDI, 하드웨어의 관계도
DirectX • Direct3D의 렌더링 파이프라인 • 3차원 장면으로부터 2차원 영상을 만드는 과정 • 3차원과 관련된 수치적인 데이터로 표현된 3차원 장면을 여러 단계의 처리를 거쳐서 실제 스크린에 표시할 영상을 만들게 됨 • 월드 변환(World Transform), 뷰 변환(View Transform), 투사 변환(Projection Transform), 뷰포트 변환(Viewport Transform)의 4가지로 구성
DirectX • 월드 변환(World Transform) • 사용자가물체를 모델링할 때에는 물체 중심적 좌표계(로컬 좌표계)를 사용하여 모델링하는 것이 편하므로 로컬 좌표계로 모델링함 • 로컬 좌표계 • 모델링하는 물체를 중심으로 하는 좌표계를 의미하는 것 • 한 장면은 여러 개의 물체를 포함할 수 있기 때문에 각 모델의 로컬 좌표를 장면에서 기준이 되는 좌표공간인 월드 좌표계로 변환 • 스케일 행렬, 회전 행렬, 이동 행렬 등 3개의 변환 행렬의 곱으로 표현할 수 있음
DirectX • 뷰 변환(View Transform) • 카메라와모든 물체는 월드 공간에서 정의되는데 카메라에서 보이는 장면의 부분을 결정하고 이로부터 화면에 표시할 영상의 계산을 위해서는 카메라를 중심으로 한 공간으로의 변환이 필요 • 월드 공간의 물체들을 카메라 공간으로 변환시켜 주는 변환 • At은 카메라가 바라보는 방향벡터, Eye는 카메라의 위치벡터, Up은 카메라의 위쪽 벡터, normal은 벡터를 정규화(normalize)하는 것, cross는 외적,dot는 내적을 의미함
DirectX • 투사 변환(Projection Transform) • 3차원 카메라 공간으로부터 2차원적인 표현을 얻으러면 투사를 해야 하는데, 일반적인 투사의 방법은 원근 투사를 사용 • 화면에 표시할 영상이 사각형 형태이므로 이에 해당하는 3차원 가시 공간이 피라미드 형태가 됨 • 최소, 최대 거리에 대해서 XY평면과 평행한 피라미드에서의 절단면을 근 평면(Near Plane)과 원 평면(Far Plane)이라 하며, 이 근 평면과 원 평면 사이의 피라미드 공간을 프러스텀(Frustum)이라 함 • 투사 변환은 프러스텀을 평행 직육면체로 바꾸는 역할을 함
DirectX • 뷰포트 변환(Viewport Transform) • 투사된결과는 x좌표와 y좌표가 -1~1 사이에 있게 되고, 이 투사된 장면 데이터로부터 Direct3D 장치가 영상을 렌더링하여 렌더타겟서피스(Render Target Surface)에 저장 • 서피스(Surface)란 디지털 영상 프레임을 저장할 수 있는 구조를 말하고 렌더타겟서피스(Render Target Surface)란 렌더링 파이프라인으로 생성된 영상이 저장되는 서피스를 지칭함 • 투사된 프러스텀으로부터 영상을 렌더링하고 그 결과를 렌더타겟서피스에 매핑하는 것이 뷰포트 변환
스캐너 작업 • 스캐너의 원리 • 스캐너(Scanner) • 문서, 그림, 필름 등의 아날로그 데이터를 컴퓨터가 인식할 수 있는 디지털 데이터로 변환하는 장치 • 스캐너의 원리 • 스캐닝할 이미지에 빛을 비춘 다음 반사되어 돌아오는 빛을 CCD(Charge Coupled Device)로 받아들여 그 빛의 양을 측정 • CCD는 자신이 받아들인 빛의 양에 비례하는 수치의 전압을 발생시키고 이 전압은 스캐너에 내장된 회로에 의해 본래의 이미지에 해당하는 픽셀 패턴으로 전환하는 과정을 거침 • 스캐너의 활용분야 • 전자출판, 인쇄분야, 그래픽 아트분야 • OCR 분야, CAD/CAM 분야 • 프레젠테이션 분야, 광파일링 분야 • 포토 CD 분야