이 번역 페이지는 최신 내용을 담고 있지 않습니다. 최신 내용을 영문으로 보려면 여기를 클릭하십시오.
imwrite
그래픽스 파일에 이미지 쓰기
설명
imwrite(
은 확장자에서 파일 형식을 유추하여 A
,filename
)filename
에서 지정된 파일에 이미지 데이터 A
를 씁니다. imwrite
는 사용자의 현재 폴더에 새 파일을 생성합니다. 출력 이미지의 비트 심도는 A
의 데이터형과 파일 형식에 따라 달라집니다. 대부분의 형식은 다음과 같이 정해집니다.
A
의 데이터형이uint8
인 경우,imwrite
는 8비트 값을 출력합니다.A
의 데이터형이uint16
이고 출력 파일 형식이 16비트 데이터(JPEG, PNG 및 TIFF)를 지원하는 경우imwrite
는 16비트 값을 출력합니다. 출력 파일 형식이 16비트 데이터를 지원하지 않는 경우imwrite
는 오류를 반환합니다.A
가double
또는single
데이터형의 회색조 또는 RGB 컬러 이미지인 경우imwrite
는 동적 범위가 [0, 1]인 것으로 가정하고 데이터를 8비트 값으로 파일에 쓰기 전에 255만큼 자동으로 스케일링합니다.A
의 데이터가single
형인 경우 GIF 또는 TIFF 파일에 기록하기 전에A
를double
형으로 변환합니다.A
의 데이터형이logical
인 경우,imwrite
는 데이터가 이진 이미지인 것으로 가정하고, 형식이 허용할 경우 1 비트 심도로 데이터를 파일에 씁니다. BMP, PNG 또는 TIFF 형식은 이진 이미지를 입력 배열로 받아들입니다.
A
가 인덱스 이미지 데이터를 포함하는 경우 추가적으로 입력 인수 map
을 지정해야 합니다.
imwrite(___,
는 하나 이상의 이름-값 인수를 사용하여 GIF, HDF, JPEG, PBM, PGM, PNG, PPM, TIFF 출력 파일에 대한 추가 파라미터를 지정합니다. 예를 들어, PNG 형식의 이미지에 주석을 추가할 수 있습니다.Name,Value
)
예제
PNG에 회색조 이미지 쓰기
인덱스 이미지 데이터를 PNG에 쓰기
인덱스 이미지 배열과 관련 컬러맵을 PNG 파일에 씁니다.
earth.mat
파일에서 샘플 이미지 데이터를 불러옵니다.
load earth.mat
이미지 배열 X
와 관련 컬러맵 map
을 작업 공간에 불러옵니다.
데이터를 새 PNG 파일에 씁니다.
imwrite(X,map,"myearth.png")
imwrite
는 myearth.png
파일을 현재 폴더에 생성합니다.
imshow
를 사용하여 새 PNG 파일을 봅니다.
imshow("myearth.png")
MATLAB 컬러맵으로 인덱스 이미지 쓰기
내장된 MATLAB® 컬러맵 copper
로 이미지 데이터를 새 PNG 파일에 씁니다.
earth.mat
파일에서 샘플 이미지 데이터를 불러옵니다.
load earth.mat
이미지 배열 X
와 관련 컬러맵 map
을 작업 공간에 불러옵니다. map
은 64 RGB 벡터의 행렬입니다.
64 RGB 벡터로 구리 톤 컬러맵을 생성합니다. 그런 다음 새 컬러맵을 사용하여 이미지 데이터를 PNG 파일에 씁니다.
newmap = copper(64);
imwrite(X,newmap,"copperearth.png");
imwrite
는 copperearth.png
파일을 현재 폴더에 생성합니다.
imshow
를 사용하여 새 PNG 파일을 봅니다.
imshow("copperearth.png")
JPEG 파일에 트루컬러 이미지 쓰기
트루컬러 이미지 데이터를 생성하여 JPEG 파일에 씁니다.
임의의 RGB 값으로 구성된 49×49×3 배열을 생성합니다.
A = rand(49,49,3);
이미지 데이터를 JPEG 파일에 씁니다. imwrite
는 .jpg
파일 확장자를 사용할 때 이 형식을 자동 선택합니다. Comment
이름-값 인수를 사용하여 파일에 주석을 추가합니다.
imwrite(A,"newImage.jpg","Comment","My JPEG file")
새 파일에 대한 정보를 봅니다.
info = imfinfo("newImage.jpg");
info.ColorType
ans = 'truecolor'
[info.Height,info.Width,info.NumberOfSamples,info.BitDepth]
ans = 1×4
49 49 3 24
info.Comment
ans = 1x1 cell array
{'My JPEG file'}
TIFF 파일에 복수 이미지 쓰기
하나의 멀티페이지 TIFF 파일에 복수의 이미지를 씁니다.
두 개의 임의 이미지 데이터 세트 im1
과 im2
를 생성합니다.
im1 = rand(50,40,3); im2 = rand(50,50,3);
첫 번째 이미지를 새 TIFF 파일에 씁니다. 그리고 두 번째 이미지를 동일한 파일에 추가합니다.
imwrite(im1,"myMultipageFile.tiff") imwrite(im2,"myMultipageFile.tiff","WriteMode","append")
애니메이션 GIF 쓰기
일련의 플롯을 그려 이미지로 캡처한 후 하나의 애니메이션 GIF 파일에 씁니다.
에 대해 을 플로팅합니다.
x = 0:0.01:1; n = 3; y = x.^n; plot(x,y,"LineWidth",3) title("y = x^n, n = " + num2str(n))
의 값을 증가시키며 일련의 플롯을 캡처합니다.
n = 1:0.5:5; nImages = length(n); fig = figure; for idx = 1:nImages y = x.^n(idx); plot(x,y,"LineWidth",3) title("y = x^n, n = " + num2str(n(idx))) drawnow frame = getframe(fig); im{idx} = frame2im(frame); end
close;
하나의 Figure에 일련의 이미지를 표시합니다.
figure; for idx = 1:nImages subplot(3,3,idx) imshow(im{idx}); end
9개 이미지를 GIF 파일에 저장합니다. GIF 파일은 3차원 데이터를 지원하지 않으므로, rgb2ind
를 호출하여 이미지의 RGB 데이터를 컬러맵 map
을 갖는 인덱스 이미지 A
로 변환합니다. 첫 번째 이미지에 복수의 이미지를 연결하려면 imwrite
를 "append"
에 설정된 이름-값 인수 WriteMode
와 함께 호출하십시오.
filename = "testAnimated.gif"; % Specify the output file name for idx = 1:nImages [A,map] = rgb2ind(im{idx},256); if idx == 1 imwrite(A,map,filename,"gif","LoopCount",Inf,"DelayTime",1); else imwrite(A,map,filename,"gif","WriteMode","append","DelayTime",1); end end
imwrite
는 현재 폴더에 GIF 파일을 추가합니다. LoopCount
를 Inf
에 설정하면 애니메이션이 계속 반복됩니다. DelayTime
을 1
에 설정하면 애니메이션의 각 이미지 간에 1초의 지연 시간을 지정합니다.
입력 인수
A
— 이미지 데이터
행렬
이미지 데이터로, 비희소 형식 행렬로 지정됩니다.
회색조 이미지의 경우
A
는 m×n 행렬이 될 수 있습니다.인덱스 이미지의 경우
A
는 m×n 행렬이 될 수 있습니다.map
입력 인수에 관련 컬러맵을 지정합니다.트루컬러 이미지의 경우
A
는 m×n×3 행렬이어야 합니다.imwrite
는 RGB 이미지를 GIF 파일에 쓰는 것을 지원하지 않습니다.
TIFF 파일의 경우, A
는 CMYK 컬러스페이스를 사용하는 색 데이터를 포함하는 m×n×4 배열이 될 수 있습니다.
멀티프레임 GIF 파일의 경우 A
는 회색조 또는 인덱스 이미지를 포함하는 m×n×1×p 배열이 될 수 있습니다. 여기서 p는 쓰려는 프레임 수입니다. 이 경우 RGB 이미지는 지원하지 않습니다.
데이터형: double
| single
| uint8
| uint16
| logical
filename
— 출력 파일의 이름
string형 스칼라 | 문자형 벡터
출력 파일의 이름으로, string형 스칼라 또는 문자형 벡터로 지정됩니다.
쓰려는 위치에 따라 filename
은 다음 형식 중 하나가 될 수 있습니다.
위치 | 형식 | ||||||||
---|---|---|---|---|---|---|---|---|---|
현재 폴더 | 현재 폴더에 쓰려면
예: | ||||||||
다른 폴더 | 현재 폴더가 아닌 다른 폴더에 쓰려면 예: 예: | ||||||||
원격 위치 | 원격 위치에 쓰려면
원격 위치에 따라
자세한 내용은 원격 데이터로 작업하기 항목을 참조하십시오. 예: |
데이터형: char
| string
fmt
— 출력 파일의 형식
"bmp"
| "gif"
| "hdf"
| "jpg"
| "jp2"
| ...
출력 파일의 형식으로, 다음 표에 있는 형식 중 하나로 지정됩니다.
이 표에는 imwrite
가 쓸 수 있는 이미지의 유형이 요약되어 있습니다. MATLAB 파일 형식 레지스트리는 어떤 파일 형식을 지원하는지를 결정합니다. 이 레지스트리에 대한 자세한 내용은 imformats
를 참조하십시오.
특정 형식의 경우 imwrite
는 추가 이름-값 인수를 받아들일 수 있습니다. 이러한 인수를 보려면 아래의 링크된 형식 이름을 클릭하십시오.
| 출력 파일의 형식 | 설명 |
---|---|---|
| BMP(Windows® 비트맵) | 1비트, 8비트 및 24비트 무압축 이미지 |
| 8비트 이미지 | |
| 관련 컬러맵이 있거나 없는 8비트 래스터 이미지 데이터 세트, 24비트 래스터 이미지 데이터 세트 | |
| 8비트, 12비트 및 16비트 기본 JPEG 이미지 참고 JPEG 형식은 인덱스 이미지를 지원하지 않으므로,
| |
| 1비트, 8비트 및 16비트 JPEG 2000 이미지 | |
| 모든 1비트 PBM 이미지, ASCII(일반) 또는 원시(이진) 인코딩 | |
| PCX(Windows 그림판) | 8비트 이미지 |
| 모든 PGM 이미지, 임의의 색 심도로 인코딩된 ASCII(일반), 회색 값당 최대 16비트로 인코딩된 원시(이진) 이미지 | |
| 1비트, 2비트, 4비트, 8비트, 16비트 회색조 이미지, 알파 채널을 가지는 8비트 및 16비트 회색조 이미지, 1비트, 2비트, 4비트, 8비트 인덱스 이미지, 24비트 및 48비트 트루컬러 이미지, 알파 채널을 가지는 24비트 및 48비트 트루컬러 이미지
참고
| |
| 자동으로 선택되는 임의의 PPM/PGM/PBM 형식 | |
| 모든 표준 PPM 이미지: 임의의 색 심도로 인코딩된 ASCII (일반) 또는 색 성분당 16비트로 인코딩된 원시(이진) 이미지 | |
| Sun® 래스터(RAS) | 1비트 비트맵, 8비트 인덱스, 24비트 트루컬러 및 알파 채널을 갖는 32비트 트루컬러를 포함하는 모든 RAS 이미지 |
| 다음을 포함하는 기본 TIFF 이미지:
| |
| XWD(X Windows Dump) | 8비트 ZPixmaps |
이름-값 인수
선택적 인수 쌍을 Name1=Value1,...,NameN=ValueN
으로 지정합니다. 여기서 Name
은 인수 이름이고 Value
는 대응값입니다. 이름-값 인수는 다른 인수 뒤에 와야 하지만, 인수 쌍의 순서는 상관없습니다.
예: imwrite(A,"myFile.png",BitDepth=8)
은 각 픽셀을 표현하기 위해 8비트를 사용하여 A
에 데이터를 씁니다.
R2021a 이전 릴리스에서는 쉼표를 사용하여 각 이름과 값을 구분하고 Name
을 따옴표로 묶으십시오.
예: imwrite(A,"myFile.png","BitDepth",8)
은 각 픽셀을 표현하기 위해 8비트를 사용하여 A
에 데이터를 씁니다.
BackgroundColor
— 배경색으로 사용할 색
음이 아닌 정수 스칼라
인덱스 이미지에 사용할 배경색으로, 컬러맵 인덱스에 대응하는 음이 아닌 정수 스칼라로 지정됩니다.
배경색은 애니메이션 GIF의 일부 처리 방법에 사용됩니다.
이미지 데이터
A
가uint8
형 또는logical
형인 경우, 컬러맵 인덱스는 0부터 시작됩니다.이미지 데이터
A
가double
형인 경우, 컬러맵 인덱스는 1부터 시작됩니다.
디폴트 배경색은 컬러맵의 첫 번째 색에 대응합니다.
예: "BackgroundColor",15
Comment
— 이미지에 추가할 주석
string형 스칼라 | 문자형 벡터 | string형 배열 | 문자형 벡터로 구성된 셀형 배열
이미지에 추가할 주석으로, string형 스칼라, 문자형 벡터, 문자형 벡터로 구성된 1×n 셀형 배열 또는 1×n string형 배열로 지정됩니다. 문자형 벡터로 구성된 셀형 배열 또는 string형 배열의 경우, imwrite
는 각 요소 다음에 캐리지 리턴을 추가합니다.
예: "Comment",["Sample #314","January 5, 2013"]
데이터형: string
| char
| cell
DelayTime
— 다음 이미지가 표시될 때까지 지연 시간
0.5 (디폴트 값) | [0, 655] 범위의 스칼라 값
다음 이미지가 표시될 때까지의 초 단위의 지연 시간으로, [0, 655] 범위의 스칼라 값으로 지정됩니다.
팁
애니메이션 속도를 높이려면 DelayTime
를 0.02
로 설정하십시오. DelayTime
을 낮은 값으로 설정하면 여러 이미지 뷰어와 웹 브라우저에서 실제 애니메이션 속도가 느려집니다.
예: "DelayTime",60
DisposalMethod
— 애니메이션 GIF의 처리 방법
"doNotSpecify"
(디폴트 값) | "leaveInPlace"
| "restoreBG"
| "restorePrevious"
애니메이션 GIF의 처리 방법으로, 다음 표에 있는 메서드로 지정됩니다.
DisposalMethod 의 값 | 결과 |
---|---|
"doNotSpecify" (디폴트 값) | 하나의 전체 크기 불투명 프레임을 또다른 전체 크기 불투명 프레임으로 교체합니다. |
"leaveInPlace" | 다음 프레임에 의해 가려지지 않는 픽셀은 계속 표시됩니다. |
"restoreBG" | 배경색 또는 배경 타일은 투명 픽셀을 관통하여 보입니다. |
"restorePrevious" | 이전의 처리되지 않은 프레임 상태로 복원합니다. |
예: "DisposalMethod","restoreBG"
Location
— 이미지를 기준으로 한 화면의 오프셋
[0,0]
(디폴트 값) | 요소를 2개 가진 벡터
각각의 왼쪽 위 코너에서 측정된 이미지를 기준으로 하는 화면의 오프셋으로, 요소를 2개 가진 벡터로 지정됩니다. 첫 번째 벡터 요소는 상부로부터의 오프셋을, 두 번째 요소는 왼쪽으로부터의 오프셋을 픽셀 단위로 지정합니다.
예: "Location",[10,15]
데이터형: double
LoopCount
— 애니메이션 반복 횟수
0
(디폴트 값) | [0, 65,535] 범위의 정수 | Inf
애니메이션이 반복되는 횟수로, [0, 65,535] 범위의 정수나 값 Inf
로 지정됩니다. 값 0
을 지정할 경우 애니메이션이 한 번 재생되고, 값 1
을 지정할 경우, 애니메이션이 두 번 재생되는 식으로 진행됩니다. Inf
의 LoopCount
값은 애니메이션이 계속 반복되도록 합니다.
Microsoft® PowerPoint® 내에서 애니메이션을 활성화하려면 [1, 65,535] 범위 내의 LoopCount
값을 지정하십시오. 일부 Microsoft 애플리케이션은 전혀 반복을 하지 않는 것으로 값 0을 해석합니다.
예: "LoopCount",3
ScreenSize
— 프레임의 높이와 너비
입력 이미지의 높이와 너비 (디폴트 값) | 요소를 2개 가진 벡터
프레임의 높이와 너비로, 요소를 2개 가진 벡터로 지정됩니다. Location
과 함께 ScreenSize
인수를 사용하면 전체 프레임보다 작은 이미지에 프레임을 기록할 수 있습니다. DisposalMethod
는 프레임 외부에 있는 픽셀에 대한 채우기 값(Fill Value)을 결정합니다.
예: "ScreenSize",[1000 1060]
데이터형: double
TransparentColor
— 투명 색상으로 사용할 색
음이 아닌 정수 스칼라
이미지에 사용할 투명 색상으로, 컬러맵 인덱스에 대응하는 음이 아닌 정수 스칼라로 지정됩니다.
이미지 데이터
A
가uint8
형 또는logical
형인 경우 인덱싱은 0부터 시작됩니다.이미지 데이터
A
가double
형인 경우 인덱싱은 1부터 시작됩니다.
예: "TransparentColor",20
WriteMode
— 쓰기 모드
"overwrite"
(디폴트 값) | "append"
쓰기 모드로, "overwrite"
또는 "append"
로 지정됩니다. "overwrite"
모드에서는 imwrite
가 기존 파일 filename
을 덮어씁니다. "append"
모드에서는 imwrite
가 기존 파일에 단일 프레임을 추가합니다.
예: "WriteMode","append"
Compression
— 압축 방식
"none"
(디폴트 값) | "jpeg"
| "rle"
압축 방식으로, 다음 표에 나와 있는 옵션 중 하나로 지정됩니다.
Compression 의 값 | 결과 |
---|---|
"none" (디폴트 값) | 무압축 |
"jpeg" | JPEG 압축. 회색조 및 RGB 이미지에 대해서만 유효함. |
"rle" | 반복 길이 부호화(Run-length Encoding). 회색조 및 인덱스 이미지에 대해서만 유효함. |
예: "Compression","jpeg"
Quality
— JPEG 압축 파일의 품질
75 (디폴트 값) | [0 100] 범위의 스칼라
JPEG 압축 파일의 품질로, 범위 [0, 100]의 스칼라로 지정됩니다. 여기서 0은 낮은 품질과 높은 압축률, 100은 높은 품질과 낮은 압축률을 나타냅니다. 이 파라미터는 Compression
이 "jpeg"
인 경우에만 적용됩니다.
예: "Quality",25
WriteMode
— 쓰기 모드
"overwrite"
(디폴트 값) | "append"
쓰기 모드로, "overwrite"
또는 "append"
로 지정됩니다. "overwrite"
모드에서는 imwrite
가 기존 파일 filename
을 덮어씁니다. "append"
모드에서는 imwrite
가 기존 파일에 단일 프레임을 추가합니다.
예: "WriteMode","append"
BitDepth
— 픽셀당 비트 수
8
(디폴트 값) | 12
| 16
픽셀당 비트 수로, 스칼라로 지정됩니다.
회색조 이미지의 경우,
BitDepth
값은8
,12
또는16
이 될 수 있습니다. 디폴트 값은8
입니다. 16비트 이미지의 경우Mode
이름-값 인수는"lossless"
여야 합니다.컬러 이미지의 경우,
BitDepth
값은 평면당 비트 수이고,8
또는12
가 될 수 있습니다. 디폴트 값은 평면당 8비트입니다.
예: "BitDepth",12
Comment
— 이미지에 추가할 주석
string형 스칼라 | 문자형 벡터 | string형 배열 | 문자형 벡터로 구성된 셀형 배열
이미지에 추가할 주석으로, string형 스칼라, 문자형 벡터, 문자형 벡터로 구성된 n×1 셀형 배열 또는 n×1 string형 배열로 지정됩니다. 문자형 벡터의 셀형 배열 또는 string형 배열의 경우, imwrite
는 JPEG 파일에서 입력의 각 행을 주석으로 씁니다.
예: "Comment",["First comment";"second comment";"third comment"]
데이터형: string
| char
| cell
Mode
— 압축 유형
"lossy"
(디폴트 값) | "lossless"
압축 유형으로, "lossy"
또는 "lossless"
로 지정됩니다.
예: "Mode","lossless"
Quality
— 출력 파일의 품질
75 (디폴트 값) | [0 100] 범위의 스칼라
출력 파일의 품질로, 범위 [0,100]의 스칼라로 지정됩니다. 여기서 0은 낮은 품질과 높은 압축률, 100은 높은 품질과 낮은 압축률을 나타냅니다. Quality
값이 100이라 해도 무손실 JPEG 이미지를 기록하지는 않습니다. 대신 Mode
이름-값 인수를 "lossless"
로 설정하십시오.
예: "Quality",100
Comment
— 이미지에 추가할 주석
string형 스칼라 | 문자형 벡터 | string형 배열 | 문자형 벡터로 구성된 셀형 배열
이미지에 추가할 주석으로, string형 스칼라, 문자형 벡터, 문자형 벡터로 구성된 셀형 배열 또는 string형 배열로 지정됩니다. 문자형 벡터의 셀형 배열 또는 string형 배열의 경우, imwrite
는 JPEG 2000 파일에서 요소의 각 행을 열 우선(column-major) 순서를 사용한 주석으로 씁니다.
예: "Comment",["First comment";"second comment";"third comment"]
예: "Comment",{'First comment','second comment','third comment'}
데이터형: string
| char
| cell
CompressionRatio
— 목표 압축률
1 (디폴트 값) | 양의 스칼라
대상 압축률로, 1보다 크거나 같은 양의 스칼라로 지정됩니다. 압축률은 압축된 출력 크기에 대한 입력 이미지 크기의 비율입니다. 예를 들어, 값이 2이면 출력 이미지 크기가 입력 이미지 크기의 절반 이하인 것을 의미합니다. 값이 높을수록 파일 크기가 더 작아지고 이미지 품질이 더욱 저하됩니다. 압축률은 헤더 크기를 고려하지 않습니다.
CompressionRatio
를 지정하는 것은 Mode
가 "lossy"
인 경우에만 유효합니다.
예: "CompressionRatio",3
Mode
— 압축 유형
"lossy"
(디폴트 값) | "lossless"
압축 유형으로, "lossy"
또는 "lossless"
로 지정됩니다.
예: "Mode","lossless"
ProgressionOrder
— 코드 스트림의 패킷 순서
"LRCP"
(디폴트 값) | "RLCP"
| "RPCL"
| "PCRL"
| "CPRL"
코드 스트림의 패킷 순서로, 다음 옵션 중 하나로 지정됩니다.
"LRCP"
"RLCP"
"RPCL"
"PCRL"
"CPRL"
문자는 다음 패킷을 나타냅니다. L
= 계층, R
= 해상도, C
= 성분, P
= 위치.
예: "ProgressionOrder","RLCP"
QualityLayers
— 품질 계층 수
1 (디폴트 값) | [1, 20] 범위의 정수
품질 계층 수로, [1, 20] 범위의 정수로 지정됩니다.
예: "QualityLayers",8
ReductionLevels
— 감소 레벨의 수
4 (디폴트 값) | [1, 8] 범위의 정수
감소 레벨 또는 웨이블릿(Wavelet) 분해 레벨의 수로, 범위 [1, 8]의 정수로 지정됩니다.
예: "ReductionLevels",6
TileSize
— 타일 높이 및 너비
이미지 크기 (디폴트 값) | 요소를 2개 가진 벡터
타일 높이와 너비로, 요소를 2개 가진 벡터로 지정됩니다. 지정할 수 있는 최소 크기는 [128 128]
입니다.
예: "TileSize",[130 130]
Encoding
— 인코딩
"rawbits"
(디폴트 값) | "ASCII"
인코딩으로, 이진 인코딩용인 "rawbits"
나 일반 인코딩용인 "ASCII"
로 지정됩니다.
예: "Encoding","ASCII"
MaxValue
— 최대 회색 또는 색 값
양의 정수 스칼라
최대 회색 또는 색 값으로, 양의 정수 스칼라로 지정됩니다.
이 이름-값 인수를 PGM 및 PPM 파일에만 지정합니다. PBM 파일의 경우, 이 값은 항상 1
입니다.
이미지 배열이 uint16
형인 경우 MaxValue
의 디폴트 값은 65535
입니다. 그렇지 않은 경우 디폴트 값은 255
입니다.
예: "MaxValue",510
Alpha
— 각 픽셀의 투명도
[0, 1] 범위 내 값의 행렬
각 픽셀의 투명도로, 범위 [0, 1] 내 값으로 구성된 행렬로 지정됩니다. Alpha
행렬의 행과 열의 차원은 이미지 데이터 배열의 차원과 같아야 합니다. 회색조(m
×n)와 트루컬러(m×n×3) 이미지 데이터에 대해서만 Alpha를 지정할 수 있습니다.
참고
Alpha
와 Transparency
는 동시에 지정할 수 없습니다.
데이터형: double
| uint8
| uint16
Author
— 작성자 정보
string형 스칼라 | 문자형 벡터
작성자 정보로, string형 스칼라 또는 문자형 벡터로 지정됩니다.
예: "Author","Ann Smith"
데이터형: string
| char
Background
— 투명 픽셀을 합성할 때의 배경색
범위 [0, 1]의 스칼라 | [1, P] 범위의 정수 | [0, 1] 범위의 요소를 3개 가진 벡터
투명 픽셀을 합성할 때의 배경색으로, 이 표에서와 같이 이미지 데이터 의존 값으로 지정됩니다.
이미지 유형 | Background 값의 형식 |
---|---|
회색조 이미지 | [0, 1] 범위의 스칼라. |
인덱스 이미지 | [1, P] 범위의 정수입니다. 여기서 P는 컬러맵의 길이입니다. 예를 들어, "Background",50 는 컬러맵의 50번째 인덱스로 지정된 색으로 배경색을 설정합니다. |
트루컬러 이미지 | 범위 [0, 1]의 RGB 농도에 대한 요소를 3개 가진 벡터입니다. 예를 들어, "Background",[0 1 1] 은 배경색을 녹청색으로 설정합니다. |
데이터형: double
BitDepth
— 픽셀당 비트 수
1
| 2
| 4
| 8
| 16
픽셀당 비트 수로, 스칼라로 지정됩니다. 출력 이미지에 따라, 스칼라 값은 이 값 중 하나가 될 수 있습니다.
이미지 유형 | BitDepth 에 허용되는 값 |
---|---|
회색조 이미지 | 1 , 2 , 4 , 8 또는 16 |
알파 채널을 갖는 회색조 이미지 | 8 또는 16 |
인덱스 이미지 | 1 , 2 , 4 또는 8 |
트루컬러 이미지 | 8 또는 16 |
이미지가 유형
double
또는uint8
형 클래스인 경우 디폴트 비트 심도(Bit Depth)는 픽셀당 8비트입니다.이미지가 유형
uint16
인 경우 디폴트 값은 픽셀당 16비트입니다.이미지가 유형
logical
인 경우 디폴트 값은 픽셀당 1비트입니다.
예: "BitDepth",4
Chromaticities
— 기준 흰색 점과 기본 색도
요소를 8개 가진 벡터
기준 흰색 점과 기본 색도로, [wx wy rx ry gx gy bx by]
형식의, 요소를 8개 가진 벡터로 지정됩니다. 요소 wx
와 wy
는 흰색 점의 색도 좌표이고, 요소 rx
, ry
, gx
, gy
, bx
및 by
는 각각 빨간색, 녹색, 파란색의 색도 좌표입니다.
Chromaticities
를 지정하는 경우에는 Gamma
이름-값 인수 또한 지정해야 합니다.
예: "Chromaticities",[0.312,0.329,0.002,0.002,0.001,0.001,0.115,0.312]
데이터형: double
Comment
— 이미지에 추가할 주석
string형 스칼라 | 문자형 벡터
이미지에 추가할 주석으로, string형 스칼라 또는 문자형 벡터로 지정됩니다.
Copyright
— 저작권 표시
string형 스칼라 | 문자형 벡터
저작권 표시로, string형 스칼라 또는 문자형 벡터로 지정됩니다.
CreationTime
— 원본 이미지 생성 시간
datetime형 | string형 스칼라 | 문자형 벡터
원본 이미지 생성 시간으로, 시점을 나타내는 datetime형, string형 스칼라, 문자형 벡터 중 하나로 지정됩니다. CreationTime
을 표준 시간대가 있는 datetime
형 값으로 지정하면 imwrite
는 표준 시간대를 값의 일부로 저장합니다.
예: "CreationTime",datetime("1955-11-12 10:04 PM","TimeZone","America/Los_Angeles")
Description
— 이미지에 대한 설명
string형 스칼라 | 문자형 벡터
이미지 설명으로, string형 스칼라 또는 문자형 벡터로 지정됩니다.
Disclaimer
— 법적 고지
string형 스칼라 | 문자형 벡터
법적 고지로, string형 스칼라 또는 문자형 벡터로 지정됩니다.
Gamma
— 파일 감마
숫자형 스칼라
파일 감마로, 숫자형 스칼라로 지정됩니다.
예: "Gamma",2.2
ImageModTime
— 마지막 이미지 수정 시간
datetime형 | string형 스칼라 | 문자형 벡터
마지막 이미지 수정 시간으로, 시점을 나타내는 datetime형, string형 스칼라, 문자형 벡터 중 하나로 지정됩니다. ImageModTime
을 UTC가 아닌 표준 시간대가 있는 datetime
형 값으로 지정하면 imwrite
는 해당 값을 저장하기 전에 UTC로 변환합니다. ImageModTime
을 표준 시간대가 없는 datetime
형 값으로 지정하면 imwrite
가 해당 값을 UTC로 해석합니다.
디폴트 ImageModTime
값은 imwrite
를 호출하는 시간입니다.
예: "ImageModTime",datetime("2018-04-01 9:00 AM","TimeZone","Europe/Rome")
InterlaceType
— 인터레이스 방식
"none"
(디폴트 값) | "adam7"
인터레이스 방식으로, 인터레이스를 사용하지 않으면 "none"
으로, Adam7 알고리즘을 사용하려면 "adam7"
으로 지정됩니다.
예: "InterlaceType","adam7"
ResolutionUnit
— 이미지 해상도 단위
"unknown"
(디폴트 값) | "meter"
이미지 해상도 단위로, "unknown"
또는 "meter"
로 지정됩니다. ResolutionUnit
을 지정하는 경우, XResolution
과 YResolution
이름-값 인수 중 적어도 하나를 포함해야 합니다. ResolutionUnit
의 값이 "meter"
인 경우, XResolution
과 YResolution
값은 미터당 픽셀로 해석됩니다.
예: "ResolutionUnit","meter","XResolution",1000
SignificantBits
— 유효 비트로 간주할 비트 수
[]
(디폴트 값) | 양의 정수 스칼라 | 양의 정수 벡터
유효 비트로 간주할 데이터 배열 내 비트의 수로, 범위 [1,BitDepth
]의 벡터 또는 스칼라로 지정됩니다. 출력 이미지의 유형에 따라, 값은 다음 형식을 따라야 합니다.
이미지 유형 | SignificantBits 값의 형식 |
---|---|
알파 채널이 없는 회색조 이미지 | 스칼라 |
알파 채널을 갖는 회색조 이미지 | 요소를 2개 가진 벡터 |
인덱스 이미지 | 요소를 3개 가진 벡터 |
알파 채널이 없는 트루컬러 이미지 | 요소를 3개 가진 벡터 |
알파 채널을 갖는 트루컬러 이미지 | 요소를 4개 가진 벡터 |
예: "SignificantBits",[2,3]
Software
— 이미지 생성에 사용되는 소프트웨어
string형 스칼라 | 문자형 벡터
이미지 생성에 사용되는 소프트웨어로, string형 스칼라 또는 문자형 벡터로 지정됩니다.
Source
— 이미지 생성에 사용되는 장치
string형 스칼라 | 문자형 벡터
이미지 생성에 사용되는 장치로, string형 스칼라 또는 문자형 벡터로 지정됩니다.
Transparency
— 투명한 것으로 간주할 픽셀
[]
(디폴트 값) | 범위 [0, 1]의 스칼라 | 벡터
알파 채널이 사용되지 않을 때 투명한 것으로 간주할 픽셀로, 스칼라 또는 벡터로 지정됩니다. 출력 이미지에 따라, 값은 다음 형식을 따라야 합니다.
이미지 유형 | Transparency 값의 형식 |
---|---|
회색조 이미지 | 투명한 것으로 간주될 회색조 색상을 나타내는 범위 [0, 1]의 스칼라. |
인덱스 이미지 | 범위 [0, 1] 내의 값에 대한 요소를 Q-개 가진 벡터입니다. 여기서 Q는 컬러맵 길이 이하이며, 각 값은 해당 컬러맵 항목과 관련된 투명도를 나타냅니다. 대부분의 경우, Q는 1 입니다. |
트루컬러 이미지 | 범위 [0, 1] 내의 RGB 농도에 대한 요소를 3개 가진 벡터로, 투명한 것으로 간주할 트루컬러 색을 나타냅니다. |
참고
Transparency
와 Alpha
는 동시에 지정할 수 없습니다.
예: "Transparency",[1 1 1]
데이터형: double
Warning
— 내용의 특징에 대한 경고
string형 스칼라 | 문자형 벡터
내용의 특징에 대한 경고로, string형 스칼라 또는 문자형 벡터로 지정됩니다.
XResolution
— 가로 방향의 이미지 해상도
숫자형 스칼라
가로 방향 이미지 해상도(단위: 픽셀/단위)로, 숫자형 스칼라로 지정됩니다. ResolutionUnit
이름-값 인수를 지정하여 단위를 정의합니다.
YResolution
을 함께 지정하지 않을 경우, XResolution
값은 가로와 세로 방향 모두에 적용됩니다.
예: "XResolution",900
YResolution
— 세로 방향의 이미지 해상도
숫자형 스칼라
세로 방향 이미지 해상도(단위: 픽셀/단위)로,숫자형 스칼라로 지정됩니다. ResolutionUnit
이름-값 인수를 지정하여 단위를 정의합니다.
XResolution
을 함께 지정하지 않을 경우, YResolution
값은 가로와 세로 방향 모두에 적용됩니다.
예: "YResolution",900
PNG에 대해 나열된 이름-값 인수 이외에 키워드에 대한 PNG 사양을 충족하는 모든 파라미터 이름을 사용할 수 있습니다. 즉, 이름은 출력 가능한 문자만 사용할 수 있고, 80개 이하의 문자를 포함하며, 선행 공백 또는 후행 공백을 포함하지 않아야 합니다. 이러한 사용자 지정 이름에 해당하는 값은 라인 피드 이외의 제어 문자를 포함하지 않는 문자형 벡터 또는 string형 스칼라여야 합니다.
Alpha
— 각 픽셀의 투명도
[]
(디폴트 값) | 행렬
각 픽셀의 투명도로, 이미지 데이터 배열과 동일한 행과 열 차원을 갖는 행렬로 지정됩니다.
이 이름-값 인수는 트루컬러(m×n×3) 이미지 데이터에 대해서만 유효합니다.
데이터형: double
| single
| uint8
| uint16
Type
— 이미지 유형
"standard"
(디폴트 값) | "rgb"
| "rle"
이미지 유형으로, 다음 표에 나와 있는 옵션 중 하나로 지정됩니다.
Type 의 값 | 설명 |
---|---|
"standard" (디폴트 값) | 트루컬러 이미지에 대한 압축되지 않은 B-G-R 색 순서 |
"rgb" | 트루컬러 이미지에 대한 압축되지 않은 R-G-B 색 순서 |
"rle" | 1비트 및 8비트 이미지의 반복 길이 부호화(Run-length Encoding) |
예: "Type","rgb"
ColorSpace
— 색 데이터를 나타내는 컬러스페이스
"rgb"
(디폴트 값) | "cielab"
| "icclab"
색 데이터를 나타내는 컬러스페이스로, "rgb"
, "cielab"
또는 "icclab"
로 지정됩니다.
이 이름-값 인수는 이미지 데이터 배열 A
가 트루컬러(m×n×3)인 경우에만 유효합니다. TIFF 파일에서 CMYK 컬러스페이스를 사용하려면 ColorSpace
이름-값 인수를 사용하지 마십시오. 대신 m×n×4 이미지 데이터 배열을 지정하십시오.
imwrite
는 L*a*b* 컬러스페이스를 사용하는 컬러 이미지 데이터를 TIFF 파일에 기록할 수 있습니다. 1976 CIE L*a*b* 사양은 휘도(L*)와 색차(a* 및 b*) 정보를 나타내는 숫자형 값을 정의합니다. L*a*b* 색 데이터를 TIFF 파일로 저장하려면 값은 8비트 또는 16비트 저장 공간에 맞게 인코딩되어야 합니다. imwrite
는 다음 인코딩을 사용하여 L*a*b* 색 데이터를 TIFF 파일로 기록할 수 있습니다.
CIELAB 인코딩 — TIFF 사양에 의해 정의된 8비트 및 16비트 인코딩
ICCLAB 인코딩 — 국제 컬러 협회(International Color Consortium)에 의해 정의된 8비트 및 16비트 인코딩
이 표에서 볼 수 있는 바와 같이, imwrite
에 의해 사용되는 출력값 클래스 및 인코딩은 입력 이미지 데이터 배열의 클래스와 ColorSpace
값에 따라 달라집니다. 8비트 및 16비트 CIELAB 인코딩은 부호 있는 값과 부호 없는 값을 혼합하여 사용하고 단일 MATLAB 배열로 표현될 수 없기 때문에 입력 배열이 될 수 없습니다.
입력값 클래스 및 인코딩 |
| 출력값 클래스 및 인코딩 |
---|---|---|
8비트 ICCLAB 값은 [0, 255] 범위의 정수입니다. L* 값에 |
| 8비트 ICCLAB |
| 8비트 CIELAB | |
16비트 ICCLAB 값은 [0, 65,280] 범위의 정수입니다. L* 값에 |
| 16비트 ICCLAB |
| 16비트 CIELAB | |
배정밀도 1976 CIE L*a*b* 값 L*은 동적 범위 [0, 100] 내에 있습니다. a*와 b*는 아무 값이나 취할 수 있습니다. a*와 b*를 |
| 8비트 ICCLAB |
| 8비트 CIELAB |
예: "ColorSpace","cielab"
Compression
— 압축 방식
"packbits"
| "none"
| "lzw"
| "deflate"
| "jpeg"
| "ccitt"
| "fax3"
| "fax4"
압축 방식으로, 다음 옵션 중 하나로 지정됩니다.
"packbits"
(비이진 이미지의 디폴트)"none"
"lzw"
"deflate"
"jpeg"
"ccitt"
(이진 이미지만 해당되며 이진 이미지의 디폴트)"fax3"
(이진 이미지만 해당됨)"fax4"
(이진 이미지만 해당됨)
"jpeg"
은 손실 압축 방식입니다. 다른 압축 모드는 무손실 방식입니다. 또한 "jpeg"
압축을 지정할 경우, RowsPerStrip
이름-값 인수를 지정해야만 하며, 그 값은 8의 배수여야 합니다.
예: "Compression","none"
Description
— 이미지 설명
string형 스칼라 | 문자형 벡터
이미지 설명으로, string형 스칼라 또는 문자형 벡터로 지정됩니다. 이 설명은 imfinfo
가 출력 이미지의 ImageDescription
필드에 반환하는 텍스트입니다.
예: "Description","Sample 2A301"
Resolution
— X 및 Y 해상도
72 (디폴트 값) | 스칼라 | 요소를 2개 가진 벡터
X 해상도 및 Y 해상도로, X 및 Y 해상도를 모두 나타내는 스칼라나 X 해상도와 Y 해상도를 포함하는, 요소를 2개 가진 벡터로 지정됩니다.
예: "Resolution",80
예: "Resolution",[320,72]
데이터형: double
RowsPerStrip
— 각 스트립에 포함할 행의 수
양의 정수 스칼라
각 스트립에 포함할 행의 수로, 스칼라로 지정됩니다. 디폴트 값은 각 스트립이 약 8KB가 되게 설정됩니다.
"jpeg"
압축을 지정하는 경우에는 RowsPerStrip
을 지정해야 합니다. 이 경우 이 값은 8의 배수여야 합니다.
예: "RowsPerStrip",16
데이터형: double
| single
| int8
| int16
| int32
| int64
| uint8
| uint16
| uint32
| uint64
WriteMode
— 쓰기 모드
"overwrite"
(디폴트 값) | "append"
쓰기 모드로, "overwrite"
또는 "append"
로 지정됩니다. "overwrite"
모드에서는 imwrite
가 기존 파일을 덮어씁니다. "append"
모드에서는 imwrite
가 기존 파일에 한 페이지를 추가합니다.
예: "WriteMode","append"
확장 기능
스레드 기반 환경
MATLAB®의 backgroundPool
을 사용해 백그라운드에서 코드를 실행하거나 Parallel Computing Toolbox™의 ThreadPool
을 사용해 코드 실행 속도를 높일 수 있습니다.
사용법 관련 참고 및 제한 사항:
backgroundPool
또는 Parallel Computing Toolbox™Threadpool
을 사용하여 백그라운드에서imwrite
를 실행할 경우imwrite
는 HDF(Hierarchical Data Format), SVS 또는 TIFF 파일 읽기를 지원하지 않습니다.
자세한 내용은 스레드 기반 환경에서 MATLAB 함수 실행하기 항목을 참조하십시오.
GPU 배열
Parallel Computing Toolbox™를 사용해 GPU(그래픽스 처리 장치)에서 실행하여 코드 실행 속도를 높일 수 있습니다.
사용법 관련 참고 및 제한 사항:
이 함수는 GPU 배열을 받지만 GPU에서 실행되지는 않습니다.
자세한 내용은 GPU에서 MATLAB 함수 실행하기 (Parallel Computing Toolbox) 항목을 참조하십시오.
버전 내역
R2006a 이전에 개발됨R2022b: PNG 메타데이터에 datetime
형 사용
CreationTime
과 ImageModTime
이름-값 인수를 지정하려면 datetime
형 값을 사용하십시오.
R2021b: 스레드 기반 환경 지원
MATLAB backgroundPool
을 사용하여 백그라운드에서 imwrite
를 실행할 수 있습니다.
R2021b: JPEG 2000 이미지의 픽셀 차이
R2021b와 이전 릴리스의 MATLAB의 JPEG 2000 이미지 간에 픽셀 값 차이가 있을 수 있습니다.
R2019b: 컬러맵 항목이 충분하지 않은 인덱스 PNG 파일의 쓰기는 지원되지 않음
인덱스 PNG 파일을 쓸 때는 이미지를 올바르게 해석할 수 있을 만큼 충분한 항목을 갖는 컬러맵을 지정해야 합니다.
MATLAB 명령
다음 MATLAB 명령에 해당하는 링크를 클릭했습니다.
명령을 실행하려면 MATLAB 명령 창에 입력하십시오. 웹 브라우저는 MATLAB 명령을 지원하지 않습니다.
Select a Web Site
Choose a web site to get translated content where available and see local events and offers. Based on your location, we recommend that you select: .
You can also select a web site from the following list:
How to Get Best Site Performance
Select the China site (in Chinese or English) for best site performance. Other MathWorks country sites are not optimized for visits from your location.
Americas
- América Latina (Español)
- Canada (English)
- United States (English)
Europe
- Belgium (English)
- Denmark (English)
- Deutschland (Deutsch)
- España (Español)
- Finland (English)
- France (Français)
- Ireland (English)
- Italia (Italiano)
- Luxembourg (English)
- Netherlands (English)
- Norway (English)
- Österreich (Deutsch)
- Portugal (English)
- Sweden (English)
- Switzerland
- United Kingdom (English)