내가 100000x100000 1 비트 (K 채널) TIFF는 2000의 dpi가 있다고 가정 해 봅시다.이 해상도를 200 dpi로 낮추고 싶습니다. 결과 이미지는 다음과 같습니다. 10000x10000 이미지. 이것은 1 비트 이미지의 매 10 비트가 새 이미지의 1 픽셀에 해당한다는 것을 의미합니까? 그건 그렇고, 난 libtiff를 사용하고 tiffreadscanline와 1 비트 티파니를 읽고. 감사!downscale 큰 1 비트 tiff 8 비트 그레이 스케일/24 비트
답변
즉, 1 비트 이미지의 모든 100 비트는 새 이미지의 1 픽셀에 해당합니다. 10x10 1 비트 픽셀 영역의 값을 평균화해야합니다. 보다 부드러운 그레이 스케일의 경우, n 비트보다 평균적입니다. n은 계산 된 영역을 부분적으로 이웃 영역 (16x16 픽셀 정사각형 10x10 픽셀 간격)으로 덮어 경계선이 오버레이되어 부드러운 8 비트
(출력 매체 또는 파일 크기로 인해) 축소 이유를 이해하는 것이 중요합니다. SF가 지적했듯이, 색상/회색 명암은 해상도와 어느 정도 호환됩니다. 파일 크기에 관한 것이라면 losless/lossy 압축도 고려해야합니다 ..
다른 것은 소스 이미지의 특성을 약간 이해하는 것입니다. 예를 들어 원본 이미지가 래스터 화 된 경우 (신문 이미지의 경우) 도트 매트릭스가 엉망이기 때문에 색 상 패턴을 얻을 수 있습니다. 한 번 오래된 뉴스 용지 이미지를 복원하려고 시도했지만 많은 작업을 발견했습니다. 나는 이미지를 강화하기 전에 그것을 그레이 스케일로 먼저 변환했다.
VIPS 또는 Irfanview로 약간의 실험을 해보는 것이 좋습니다 (즉, 특정 리샘플링 알고리즘이 이미지 품질에 미치는 영향). 이러한 프로그램 (Photoshop을 통해)을 사용하는 이유는 GUI/명령 줄을 사용하여 그 뒤에있는 알고리즘의 이름/매개 변수를 인식하면서 실험 할 수 있기 때문입니다. VIPS를 사용하면 모든 매개 변수가 아닌 모든 매개 변수를 제어 할 수 있습니다.
[편집] TiffDump (LibTiff 바이너리와 함께 제공)는 유용한 정보 소스입니다. 바이트 순서 등에 대해서 알려줄 것입니다. 내가 한 것은 알려진 이미지로 시작하는 것입니다. 예를 들어, LibTIFF.NET에는 b & w (일부는 0 = 검은 색, 일부는 1 = 검은 색)가 포함 된 많은 테스트 이미지가 제공됩니다. [/ 편집]
실제로 내 현재 문제는 1 비트 image.say에서 비트를 해석합니다. 200x144 pix 1 비트 이미지가 있고 200x144 pix 8 비트 이미지로 변환하려는 반면, 1 비트는 0이 255입니다. (회색)이고 1 비트의 1은 0 (회색)입니다. 0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00, 0x00,0x00,0x00,0x00,0x00,0x00,0x00 1 비트 이미지의 은 1 비트 이미지에서 입니다. , 0x00,0x00,0x00,0x00, 0x00,0x00,0x00 나는 25 비트를 얻지 만 1 비트 이미지의 너비는 200입니다. 그래서 200의 스캔 라인 크기도 기대합니다 .if i가 25를 8로 곱하면 200이됩니다. 하지만 데이터는 어디에서 얻을 수 있습니까? 감사. –
총 25 비트 = 8 비트, 총 200 비트 = 픽셀. 깊이를 8 비트로 늘리면 결과 이미지의 한 바이트에 7 비트가 낭비됩니다. 바이트에서 단일 비트를 추출하는 것은 사용자 (비트 시프트, 마스크 및 논리 연산자 사용)에게 달려 있습니다. –
SF에 동의합니다. 내 게시물의 [편집]을 참조하십시오. – Adriaan
다운 샘플링 외에도 이미지가 흐리게 표시됩니다. – Joey
반경이 1.3px 인 경우 효과가 줄어들지 않고 (주관적인) 품질이 추가 될 것입니다. 간단한 조회를 통해 100에서 256 그레이 스케일 레벨의 업 스케일링이 이미지의 그래디언트 영역에서 실제로보기 흉하게 보입니다. –
수정 : 0.8px 흐림 반경. –