2017-02-02 2 views
1

Я пытаюсь преобразовать некоторое изображение (raw), у которого нет заголовка, только значения пикселей для png, поэтому я могу его просмотреть. Я нашел некоторую информацию here (используя imageMagik), и она работает, если изображение является одним каналом. Я использовал командуПреобразование rgb в png с imagemagik

convert -depth 8 -size 5312x2988+0 gray:image.raw pic.png 

Я искал больше, и я обнаружил, что использование рпга является способом лечения больше каналов изображения, так что я изменил синтаксис

convert -depth 8 -size 5312x2988+0 rgb:image.raw pic.png 

... но выход кажется чтобы больше походить на матрицу 9х9, содержащей маленькие изображения, как

R R R 
G G G 
B B B 

размер не является неправильным, но это может быть так, как пиксели сохраняются (чересстрочная/не-чересстрочное).

Может ли кто-нибудь помочь мне преобразовать 3-канальное изображение, правильный путь?

+2

Перед входным файлом вы можете попробовать указать '-interlace plane'. Или, может быть, '-строчная линия'. Или поделитесь файлом, и я попробую. –

+0

Что генерирует необработанные данные? Если результаты RRRGGGBBB, это заставляет меня думать, что это не 16-битный поток. – emcconville

+0

@emcconville извините, это ошибка там, я попробовал больше вещей, и, похоже, я скопировал неправильную строку, глубина 8 (я отредактировал) – sop

ответ

1

Вы можете попробовать указать -interlace plane перед входным файлом. Или, может быть -interlace line, как это:

convert -interlace plane -depth 8 -size 5312x2988+0 rgb:image.raw pic.png 

Как и многие ImageMagick параметров, вы можете перечислить параметры в командной строке с identify -list OPTION, поэтому в данном случае:

identify -list interlace 

Выходной

Line 
None 
Plane 
Partition 
GIF 
JPEG 
PNG 
Смежные вопросы