Главная страница
    Top.Mail.Ru    Яндекс.Метрика
Текущий архив: 2004.10.31;
Скачать: CL | DM;

Вниз

Быстрая работа с файлами Jpeg   Найти похожие ветки 

 
dedMazDie   (2004-07-19 12:22) [0]

Проблема такова. Имеется около сотни файлов Jpeg (снятых с камеры с шагом 0.1 мм произвольного объекта). В каждом из них выбирается полоса из 21-го пиксела и оценивается светимость каждого пиксела. Результаты сохраняются. Вопрос таков как это можно сделать наиболее экономичным способом. Я делал так:
 
 BitMap := TBitmap.Create;
 JpegIm := TJPEGImage.Create;
 
 for j := 0 to 20 do
   begin
     Pict.Clear;
     for i := 0 to OpenDialog.Files.Count - 1 do
       begin
         JpegIm.LoadFromFile(OpenDialog.Files.Strings[i]);

         BitMap.Assign(JpegIm);
         l[1] := 0.1*i;
         l[2]:=0;

         ColorToHSL(BitMap.Canvas.Pixels[435, j + 200], H, S, Lumin);
         l[2] := Lumin;
         Pict.Add(@l);
       end;
получается весьма долго. А при реальном измерении картинок будет в разы больше и подобная скорость совсем неприемла


 
Анонимщик ©   (2004-07-19 15:36) [1]

1. Обращайся к пикселям через ScanLine, будет быстрее.
2. Тебе ведь нужно перекодировать не всю картинку (из jpeg в bitmap), а только некоторые участки. Но это смотря где тормоза.


 
dedMazDie   (2004-07-21 15:22) [2]

2Анонимщик
Т.е. возможна перекодировка только определенного участка картинки?


 
Анонимщик ©   (2004-07-21 15:41) [3]

Возможна то возможна, да только я не совсем уверен, что у тебя получится.
Поставь только Bitmap.Handle := dmDIB и проверь, может, ускорится до приемлемого. Естетсвенно, используй ScanLine


 
Анонимщик ©   (2004-07-21 16:29) [4]

Если есть желание помучиться, скачай описание jpeg - формата файла и алгоритмов, используемых для сжатия, но, если ты с этим раньше не сталкивался, лучше обломись:

http://sources.codenet.ru/download.php?id=248&cid=20&o=0&my=0


 
dedMazDie   (2004-07-28 14:08) [5]

Спасибо за советы! Попробую что-нить изменить.


 
Думкин ©   (2004-07-28 14:10) [6]

А JPeg из каких соображений? Все-таки потеря информации, перекодировка..


 
dedMazDie   (2004-08-02 10:56) [7]

Да в общем все задают этот вопрос... Я не знаю честно говоря. Картинки снимает камера, но там можно поставить и битмап...
Только объём будет больше. А вот мне посоветовали, что можно прямо из файла считывать инфу о пикселах, использая айпишные функции... Какие соображения по этому поводу будут?



Страницы: 1 вся ветка

Текущий архив: 2004.10.31;
Скачать: CL | DM;

Наверх




Память: 0.46 MB
Время: 0.045 c
3-1096731972
DIS
2004-10-02 19:46
2004.10.31
FastReport и поле memo


3-1096599868
AZ
2004-10-01 07:04
2004.10.31
Неоправданное распухание файла .DB


14-1097077567
Leksiy
2004-10-06 19:46
2004.10.31
Глюк


4-1095944813
Grigsv
2004-09-23 17:06
2004.10.31
DLL И Interface


11-1082007349
nester
2004-04-15 09:35
2004.10.31
Как создать поток без MCK?





Afrikaans Albanian Arabic Armenian Azerbaijani Basque Belarusian Bulgarian Catalan Chinese (Simplified) Chinese (Traditional) Croatian Czech Danish Dutch English Estonian Filipino Finnish French
Galician Georgian German Greek Haitian Creole Hebrew Hindi Hungarian Icelandic Indonesian Irish Italian Japanese Korean Latvian Lithuanian Macedonian Malay Maltese Norwegian
Persian Polish Portuguese Romanian Russian Serbian Slovak Slovenian Spanish Swahili Swedish Thai Turkish Ukrainian Urdu Vietnamese Welsh Yiddish Bengali Bosnian
Cebuano Esperanto Gujarati Hausa Hmong Igbo Javanese Kannada Khmer Lao Latin Maori Marathi Mongolian Nepali Punjabi Somali Tamil Telugu Yoruba
Zulu
Английский Французский Немецкий Итальянский Португальский Русский Испанский