|
Вопрос # 1 979/ вопрос открыт / |
|
Здравствуйте, эксперты!
Доброго времени суток!
Как достать изображение из файла? Файл прикреплен
К вопросу прикреплён файл. Загрузить » (срок хранения: 60 дней с момента отправки вопроса)
Примечание #1 (8 октября 2008, 15:01): Бетер А В - Это фамилия пациента
Примечание #2 (9 октября 2008, 11:51):
 |
Вопрос задал: seryoga (статус: 1-ый класс)
Вопрос отправлен: 8 октября 2008, 14:04
Состояние вопроса: открыт, ответов: 1.
|
Ответ #1. Отвечает эксперт: ANBsoft
Здравствуйте, seryoga!
Лень оптимизировать и ускорять, если Вам нужно - сделаете (а Вадим К. подскажет как).
Возможно цвет идет более чем 8 бит - лишнее отбросил.
Установите на форме TImage размером 1024х1024.
Даю текст загрузчика картинки:
Var X,Y:Integer;
FF:File of Byte;
b:Byte;
begin
AssignFile(ff,'Single00.img');
Reset(ff);
For X:=1 to 744 do
Read(ff,b); //Пропускаем заголовок
X:=1;
Y:=1;
while not eof(ff) do begin
Read(ff,b);
Image1.Canvas.Pixels[X,Y]:=RGB(b,b,b);
Inc(X);
if x>=946 then begin
x:=0;
Inc(Y);
end;
Read(ff,b);
end;
CloseFile(ff);
end;
 |
Ответ отправил: ANBsoft (статус: Студент)
Время отправки: 8 октября 2008, 17:16
Оценка за ответ: 5
Комментарий к оценке: спасибо и на этом но в общем ужастно
|
Мини-форум вопроса
Всего сообщений: 46; последнее сообщение — 9 октября 2008, 21:05; участников в обсуждении: 3.
Страницы: [« Предыдущая] [1] [2] [3] [Следующая »]
|
Вадим К (статус: Академик), 8 октября 2008, 15:13 [#21]:
да не надо никакого вьювера. надо что бы он только был открыт на экране. и потом жать кнопку PrintScreen (Это кнопка на клавиатуре ).
Галочка "подтверждения прочтения" - вселенское зло.
|
|
ANBsoft (статус: Студент), 8 октября 2008, 15:13 [#22]:
что значит карточные?
с адреса 0х2Е8 четко просматривается графические данные, правда скорее всего 2 байта на пиксель.
Картинка хоть цветная или чернобелая должна быть?
|
|
Вадим К (статус: Академик), 8 октября 2008, 15:15 [#23]:
стоп. я немного раньше посмотрел...
да, там похоже на картинку. и похоже она там не одна.
Карточные данные - имя пациента. дата снимка, и так далее.
Галочка "подтверждения прочтения" - вселенское зло.
|
|
seryoga (статус: 1-ый класс), 8 октября 2008, 15:17 [#24]:
черно-белая - Это же флюорография
|
|
seryoga (статус: 1-ый класс), 8 октября 2008, 15:18 [#25]:
to Вадим К вариант с принтскрином не проходит
|
|
Вадим К (статус: Академик), 8 октября 2008, 15:21 [#26]:
Почему? должен!
Хоть какие пропорции картинки и размеры на глаз
Галочка "подтверждения прочтения" - вселенское зло.
|
|
Вадим К (статус: Академик), 8 октября 2008, 15:35 [#28]:
а похуже сервиса не было?
Скачал, посмотрел. буду дома - возьму свои утилиты - помучу ими. Правда пока гарантии, что получиться хорошая смотрелка - мало.
Галочка "подтверждения прочтения" - вселенское зло.
|
|
ANBsoft (статус: Студент), 8 октября 2008, 17:06 [#29]:
получил картинку
|
|
Вадим К (статус: Академик), 8 октября 2008, 17:20 [#30]:
ой, а как быстро будет преобразование работать, Бубырь Александр Николаевич.
зачем в цикле читать по байту, если можно сразу спозиционировать. Но с другой стороны - не факт, что константная позиция всегда будет
Галочка "подтверждения прочтения" - вселенское зло.
|
|
ANBsoft (статус: Студент), 8 октября 2008, 17:29 [#31]:
Я не сказал что будет быстро работать, я быстро получил положительный результат, далее дело техники.
Отражать файл в фамять, ускорять, оптимизировать - все можно, когда уже знаешь что делать.
|
|
Вадим К (статус: Академик), 8 октября 2008, 17:33 [#32]:
Зачем отображать файл в память? банальное позиционирование - seek...
Галочка "подтверждения прочтения" - вселенское зло.
|
|
ANBsoft (статус: Студент), 8 октября 2008, 17:34 [#33]:
это понятно, но на фоне 2мбайт эти 700 байт мало что решают
|
|
Вадим К (статус: Академик), 8 октября 2008, 17:45 [#34]:
всё начинается с малого... и рождаются индусы...
Галочка "подтверждения прочтения" - вселенское зло.
|
|
ANBsoft (статус: Студент), 8 октября 2008, 18:03 [#35]:
Вадим, это не первый наш спор, поторюсь, что клиенту лучше большие, медленные, неудобные программы, но сегодня, чем маленькие, быстрые и т.д., но когда-то потом. Будет необходимость и финансирование - всегда можно доработать. Кроме того проще нанять 10 индусов, и они сделают больше, быстрее и дешевле (а главное сделают), чем один гуру.
Я не настаивал на оптимальности своего кода, (даже наоборот: "Лень оптимизировать и ускорять, если Вам нужно - сделаете (а Вадим К. подскажет как)."), я разобрался в структуре файла и на скорую руку в 20 строк набросал простой загрузчик картинки. Если хотите, возьмите мою информацию о структуре файла и покажите как нужно писать, а критиковать проще всего.
|
|
seryoga (статус: 1-ый класс), 8 октября 2008, 18:05 [#36]:
кстати А Вы не нашли случайно где размеры задаются? потому что не все имейджики открываться одинаково красиво
|
|
seryoga (статус: 1-ый класс), 8 октября 2008, 18:07 [#37]:
Выложите пожалуйста если вас не затруднит информацию о структуре файла
|
|
Вадим К (статус: Академик), 8 октября 2008, 18:24 [#38]:
to seryoga
если внимательно читали выше, то я писал, что надо правильно найти стартовую позицию. А в приведённом коде забита константа.
А структуру файла он, как и я только на пальцах видим. Нет у нас никакой документации о нем.
Галочка "подтверждения прочтения" - вселенское зло.
|
|
ANBsoft (статус: Студент), 8 октября 2008, 18:32 [#39]:
Многого сказать не могу, мало информации для анализа.
Просматривая файл через HexEdit, хорошо видно где начинается графическая информация, до нее идут поля с описанием даты, времени, пациента и прочее, посмотрите в других файлах.
Кроме того, все ли файлы одинакового размера?
В аппаратных вещах обычно разрешение картинки жестко задано (но не факт), в зависимости от вида неправильно отображенных файлов нужно смотреть.
|
|
Вадим К (статус: Академик), 8 октября 2008, 18:42 [#40]:
надо просто вычитать данные вначале. я даже кажеться знаю как.
Галочка "подтверждения прочтения" - вселенское зло.
|
Страницы: [« Предыдущая] [1] [2] [3] [Следующая »]
Чтобы оставлять сообщения в мини-форумах, Вы должны авторизироваться на сайте.
|