나는 피라미드 타일로 된 TIFF 파일을 가지고 있는데, 나는 TIFFReadRawTile() 함수를 사용하여 jpeg 디코딩 및 재 인코딩없이 타일을 추출하려고합니다. 디코딩하지 않고 원시 타일을 추출 할 수 있습니다. 어떻게 추출 된 버퍼를 읽을 수있는 JPEG 파일에 쓸 수 있습니까?libtiff의 TIFFReadRawTile을 사용하여 압축 해제없이 jpeg 타일을 얻습니다.
0
A
답변
0
나는 실제로는 매우 까다로운 tiff의 허프만 테이블을 엉망으로 만들지 않고도 인코딩 된 타일을 얻을 수있는 방법이 없다는 것을 발견했습니다.
내가 찾은 유일한 방법은 디코딩 된 타일을 읽은 다음 jpeg로 직접 출력하기 위해 vips로 마술을하는 것입니다.
tdata_t buf;
tsize_t len;
buf = _TIFFmalloc(TIFFTileSize(tif));
len = TIFFReadEncodedTile(tif, tile, buf, (tsize_t) -1);
VImage result ((void *) buf, 256, 256, 3, VImage::FMTUCHAR);
void *outBuffer;
unsigned long len;
vips_jpegsave_buffer(result, &outBuffer, &len, "Q", 90, NULL);
일부 머리글 다음에 이미지를 출력하려면 cout을 사용하십시오.
0
당신이하고있는 작업은 사소한 작업이 아닙니다. tiff2pdf 유틸리티의 소스 코드를 자세히 살펴볼 수 있습니다. 이 유틸리티는 필요한 것을 수행하고 관련 부분을 추출 할 수 있습니다.
문제는 유틸리티에서 버려야 할 다른 많은 것들이 있다는 것입니다. 또한 유틸리티에서 JPEG-in-TIFF를 성공적으로 처리 할 수 없습니다. 기본적으로, 거기에 반쯤 깨진 TIFF가 있기 때문입니다.
관련 문제
- 1. 목표 C - 압축 해제없이 압축 파일에 액세스
- 2. jpeg 압축 비율
- 3. 역방향 "jpeg"압축 알고리즘?
- 4. PHP가있는 서버에서 jpeg 압축
- 5. 무손실 압축 JPEG gstreamer 요소?
- 6. JPEG 메모리에 PHP 이미지 압축
- 7. (무손실) JPEG 압축 용 라이브러리
- 8. 하드웨어 JPEG 압축 해제/Win32
- 9. iOS 대 포토샵 JPEG 압축
- 10. 타일을 사용하여 XNA에 타일을 만들고 저장하기
- 11. JPEG 이미지의 압축 수준을 감지하는 방법은 무엇입니까?
- 12. libtiff.net에서 jpeg 압축 파일을 읽을 수 없습니다.
- 13. 사용자 정의 PhotoLibrary 및 JPEG 압축
- 14. 압축 도메인에서의 움직임 감지 (JPEG/Mpeg4/H264)
- 15. CSS3 체크 타일을 사용하여 경기하기
- 16. tiff lzw 압축 원래 jpeg 압축보다 10 배 더
- 17. JSP를 사용하여 JPEG 인쇄하기
- 18. 사용하여 JPEG 파일은
- 19. Java의 JPEG 인코더에서 압축 된 이미지 데이터를 얻는 방법
- 20. JPEG 압축 대신 YUYV를 사용하는 ARM (Beagleboard) 용 OpenCV?
- 21. JPEG
- 22. 압축 : Java/Scala에서 지정된 비트 전송률로 JPEG 이미지 저장
- 23. JPEG 또는 기타 손실이 큰 이미지 압축 라이브러리가 필요합니다
- 24. jpeg 이미지의 빠른 압축 해제 및 재배율을위한 알고리즘
- 25. 알려진 해상도의 JPEG 압축? 헤더를 저장할 가능성이 있습니까?
- 26. 일시적 중복을 포함하는 세 개의 개별 jpeg 사진 압축 중입니까?
- 27. com.sun.image.codec.jpeg.JPEGImageEncoder와 javax.imageio.ImageIO를 사용하여 jpeg 스트리밍
- 28. .jls 파일의 내용 (JPEG-LS 압축) 또는 해당 비트 스트림에 액세스하여 C#을 사용하여 압축 할 수 있습니까?
- 29. OpenLayers를 사용하여 OSM에서 투명 타일을 얻는 방법
- 30. Tilecache가 Mapnik을 사용하여 타일을 생성하지 못했습니다.
tiff2pdf 소스 코드를 확인하겠습니다. JPEG-in-TIFF는 항상 vips2tiff 명령을 사용하여 만들어 졌으므로 항상 동일한 형식으로 변환됩니다. 사실 난 그냥 TIFFReadEncodedTile() vips 이미지와 함께 일하고있어하지만 디코딩/인코딩 부분을 건너 뛸 가능하면 싶어요 – alex88
불행히도, vips2tiff에 대해 아무것도 몰라, 그래서 더 좋은 출발점이라면 말할 수 없다. tiff2pdf. – Bobrovsky
걱정 마세요. TIFFReadEncodedTile이 JPEG을 디코딩하는 것입니다. RAW 버전은 인코딩 된 JPEG를 반환하지만 일부 jpeg 메타 데이터를 추가해야한다고 생각합니다. – alex88