Форум: "Media";
Текущий архив: 2004.12.12;
Скачать: [xml.tar.bz2];
Вниз
Загрузка части картинки Найти похожие ветки
← →
dedMazDie (2004-09-08 11:39) [0]Господа! Подскажите, пожалйста, как возможно загрузить в TImage
кусок картинки (т.е. прямоугольник пикселей).
← →
antonn © (2004-09-08 13:51) [1]А слабо просмотреть ближайшие темы?
← →
dedMazDie (2004-09-08 14:28) [2]Там описывается работа с двумя файлами везде... А мне нада загружать из файла нужные фрагменты (если это возможно - плохо разбираюсь). А ещё лучше не загружая ни в какой компонент прямо из файла брать инфу о яркости пикселя, т.е. мне нада только получить к нему доступ, дальше я уже сам.
← →
Jeer © (2004-09-08 14:52) [3]Для таких как ты TImage и создан.
← →
antonn © (2004-09-08 15:44) [4]
> dedMazDie (08.09.04 14:28) [2]
Тебе хоть как придется "перебирать" полностью файл. Даже загружать бинарные данные придется полностью.
← →
dedMazDie (2004-09-08 15:47) [5]2Jeer
Уважаемый! Если не знаешь как это сделать или знаешь, что этого нельзя сделать - лучше сказать, а не выпендриваться. TImage не устраивает, т.к. это медленно - при обработке сотен картинок это выливается в часы, что совсем неприемлимо.
← →
dedMazDie (2004-09-08 15:59) [6]2antonn
Т.е. я понимаю, что повысить скорость обработки таким путем мне
не удасться?
← →
Ja (2004-09-08 16:32) [7]Скорость загрузки файла - нет, а вот исключить обработку+прорисовку ненужных тебе областей (и как следствие общее быстродействие) - да.
← →
dedMazDie (2004-09-08 16:57) [8]2Ja
Спасибо!
Буду благодарен также, если подскажешь, где и что искать, почитать что или пример какой...
← →
Jeer © (2004-09-08 17:31) [9]dedMazDie (08.09.04 15:47) [5]
А в чем проблема-то ?
Для нужного формата файла (предварительно изучив его) пиши свой парсер. Но для некоторых форматов все равно придется загружать полностью.
И что такое часть картинки ?
Треугольная, овальная, диагональная или вообще в полосочку ?
Задумайся слегка и сложность ситуейшейн тебе станет понятнее.
← →
Korneley © (2004-09-08 17:48) [10]Сначала грузишь файл в обычный битмап, затем используешь его Canvas для обработки. Например:
var bmp : TBitMap;
...
bmp := TBitMap.Create;
try
bmp.LoadFromFile("FileName.bmp");
{
далее, если нужен доступ к отдельным точкам пользуешь свойство
bmp.Canvas.Pixels[x,y]
если кусок зарисовать на чужом Canvas-е - метод
Canvas.CopyRect
и т.д.
}
finally
bmp.Free;
end;
Лучще ничего сходу не придумал. А читать - хэлпы Ж:)
← →
dedMazDie (2004-09-09 11:36) [11]Картинка - фотография с видеокамеры. Загружать нада прямоугольник определённый только, чтоб обработать нужные пиксели. Canvas.Pixel работает совсем медленно - его я использовал с самого начала, потом стал Scanline использовать - всё равно меделенно. Вот и думаю как бы ещё ускорить...
← →
Jeer © (2004-09-09 12:36) [12]CopyRect никто не отменял.
← →
Рыба © (2004-09-09 18:30) [13]>dedMazDie (09.09.04 11:36) [11]
>потом стал Scanline использовать - всё равно меделенно. Вот и думаю как бы ещё ускорить...
FastLib, g32 или http://www.delphimaster.ru/articles/pixels/index.html
← →
Mihey_temporary © (2004-09-09 20:06) [14]
> Jeer © (09.09.04 12:36) [12]
Да не старайся, всё равно конченый случай.
← →
dedMazDie (2004-09-10 13:01) [15]Всем спасибо!
Страницы: 1 вся ветка
Форум: "Media";
Текущий архив: 2004.12.12;
Скачать: [xml.tar.bz2];
Память: 0.47 MB
Время: 0.035 c