Вниз
Скачать: CL | DM;

Загрузка части картинки   Найти похожие ветки 

← →
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 вся ветка

Скачать: CL | DM;



Память: 0.48 MB
Время: 0.04 c
3-1100453708
Недалекий
2004-11-14 20:35
2004.12.12
Delphi - IBX - Insert


3-1099996633
Квэнди
2004-11-09 13:37
2004.12.12
Ошибка Mysql Client


14-1101237565
Piter
2004-11-23 22:19
2004.12.12
Интересный пример кода в Тейксера и Пачеко


8-1094823919
debuger
2004-09-10 17:45
2004.12.12
Контраст и Яркость.


14-1101327543
Ig
2004-11-24 23:19
2004.12.12
InterBase в Delphi//




   Наверх