2017-11-08 2 views
1

엄청난 양의 이미지를 생성하는 응용 프로그램을 작성 중입니다. 각 프레임의 크기는 1280x800 픽셀이며 색상 정보 (그레이 스케일)는 픽셀 당 1 바이트입니다. 각 프레임은 디스크에 기록되어야합니다.가능한 한 빨리 디스크에 이미지 데이터 쓰기

현재 원시 픽셀 데이터를 디스크의 이진 파일로 덤프합니다. 파일은 내가 만든 특수 뷰어로 볼 수 있습니다.

이미지를 직접 보거나 처리 할 수 ​​없기 때문에 매우 만족스럽지 않은 솔루션입니다. 그들은 항상 내 사용자 정의 뷰어/변환기를 실행해야합니다.

  • 많은 최종 파일의 크기를 증가하지 않습니다

    1. 을 기록 할 빠른가요 (비 압축 등) :

      I 디스크에 내 이미지를 작성하는 데 사용할 수있는 이미지 형식이 있습니까 거기에 내 원시 픽셀 버퍼를 덤프

    2. 지지대 (더 alignemnt의 변경 등)
    3. 은 일반적인 응용 프로그램 (Windows 탐색기, 그림판, 포토샵 등)
    읽을 수 없습니다

    이미 .png를 사용하려고했지만 압축으로 인해 파일 생성이 너무 오래 걸립니다.

    +0

    라이브러리를 요청하지 않습니다. – Boris

    +0

    형식 사용은 라이브러리를 사용하거나 자신의 저작물을 쓰는 것을 의미하며 일반적으로 너무 광범위하다고 간주됩니다. 또한 인용 된 지침이 좀 더 일반적으로 외삽 될 의도가 있다고 생각됩니다. (하지만 잘못된 것일 수 있습니다.) –

    +0

    https://stackoverflow.com/a/41699561/2836621 –

    답변

    3

    binary Portable GrayMap (P5) 형식을 살펴보십시오. 매우 간단한 헤더와 그 다음에 미가공 이미지 데이터 (정렬 요구 사항 없음)로 구성되며 이미지 뷰어가 널리 지원합니다.

    +0

    신난다, 내가 필요로했던 정확하게 것. 내가 전에이 형식에 대해 들어 본 적이없는 이상한 ... – Boris

    0

    원시 데이터를 저장하는 데 bmp와 tiff를 모두 사용할 수 있습니다. Bmp는 높이가 음수가 아니라면 이미지가 거꾸로되어있는 기이합니다. Tiff에는 다양한 인코딩 옵션이 있습니다. 이미지 데이터를 복사하여 붙여 넣는 템플릿으로 사용할 형식을 리버스 엔지니어링하는 것이 어쨌든 가능해야합니다. 따라서 라이브러리를 사용할 필요가 없습니다. 헤더, 이미지 데이터 및 선택 사항 인 꼬리말이 연결됩니다.

    관련 문제