Перевести цвета из графического файла в *.txt_ЗАКРЫТО

IRaMoNI

Подскажите пожалуйста в чем и как можно получить матрицу яркостей цвета - столбцы и колонки (в текстовый файл) из обычного графичекого файла формата (tiff, bmp и т.п)

pupsik77

матлаб

IRaMoNI

Как? В матлабе вообще не работал. Ладно щас пошарюсь в матлабе, а то уже зае.... искать как это сделать

pupsik77

там есть функция открытия БМП, ЖПГ и т.п.
получаешь массив РГБ.
дальше его сохраняй во что хочешь.

IRaMoNI

Щас поставлю MatLab6.5

pupsik77

кстати, если умеешь писать на С# - там этот оже делается в 5 минут.
на С++ думаю тоже.

IRaMoNI

Что то не х в матлабе не получилось массив слишком большой там ограничение на 65000 элементов, а он у меня за все 1600000. С+ тем более глухо, у меня профиль специализации несколько иной Мне ближе IDL, но прогать точно не буду для того дела! Должно это быть предусмотрено спец софтом! типа ENVI, Erdas, Pci Geomatic, но б что то они ни х.. не могут . Ну эту работу в .... Спасибо что подсказал. MatLab понравился

kruzer25

но прогать точно не буду для того дела
Так тут "прогать"-то почти и не надо.

pupsik77

там ограничение на 65000 элементов

это какая-то резаная версия матлаба?
вообще он работает с матрицами почти произвольного размера.

IRaMoNI

хз, Нет версия вроде полная взял в сетке на 3 сd! Как понял в матлабе сначала импортируешь растр смотришь массив через array editor и сохраняешь его. На этом все и заканчивается, пишет что не может открыть больше чем 65536 элементов. Прямого сохранения растра в *.txt не нашел

Barbie29

напиши прогу, это проще

danilov

gimp - импорт в c-код

pupsik77

не, зачем так сложно.
загружаешь картинку в матрицу 3х мерную
а потом просто эту матрицу сохраняешь в текстовый файл.
точнее наверное сначала надо будет преобразовать в двумерную матрицу, а потом сохранить.
к сожалению больше написать не могу под руками нет матлаба...
скажи конкретнее какие у тебя картинки? формат, размер, цветность.

IRaMoNI

картинки можно в любом формате tif, hdf, bmp
тип одноканальные полутоновые, но значения пикселов преобразованные в основном имеют вид 0,01245 типа такого, -пересчитанные космо снимки, я привык работать с растрами, но человеку которому нужны с них данные требуется текстовая матрица
размер у всех один 9314*8557 всего то 79699898 значений
Если не сложно объясни через что загружать картинку в матрицу 3х мерную? нашел только Import Data и дальше как писал выше
Сейчас ухожу буду только ближе к вечеру

Missi4ka

можно использовать c++-ные библи. например, в QT есть класс для BMP-файла, а также контейнерные и файловые классы, с помощью которых можно в три строчки сохранить рисунок в виде текста. Но надо, соответственно, иметь установленной эту библиотеку и немного в ней шарить. Так что хрен редьки не слащче...

danilov

А всё-таки... Если есть линкс с гимпом под рукой - попробуй, это просто - открой картинку и сохрани как c-файл...
Оттуда руками должен вырезаться текст.

davidko

это разве то будет? Разве он не в псевдографику переведёт в таком случае?
Гимп под винды бывает, вроде.

pupsik77

далекий 97 год....
h=imread('dpg.jpg');
siz=size(h);
r=h(:,:,1);
g=h(:,:,2);
b=h(:,:,3);
возможно для одноканального там будет одномерная матрица. этого я уже не помню.

danilov

неа. Там создаётся одуреннейший массив. Но с ходу не скажу, какого формата

danilov

проверил... Это не то там в виде одной строки - последовательность символов вида \xxx

IRaMoNI

Всем спасибо за посильную помощь! Наконец то нашел как это сделать в Erdas Imagine 8.7

a10063

Это не то там в виде одной строки - последовательность символов вида \xxx
почему не то? разве там не rgb всех пикселей последовательно выводятся?

danilov

ну да но боюсь в таком формате это автору не нужно и мало поможет.
Оставить комментарий
Имя или ник:
Комментарий: