|
|
Регистрация Восстановить пароль |
Повторная активизация e-mail |
Регистрация | Задать вопрос |
Заплачу за решение |
Новые сообщения |
Сообщения за день |
Расширенный поиск |
Правила |
Всё прочитано |
|
Опции темы | Поиск в этой теме |
01.12.2009, 07:47 | #1 |
Пользователь
Регистрация: 01.12.2009
Сообщений: 10
|
Замена некоторых пикселей в изображении
Просидел всю ночь так и не смог разобраться, может кто может подсказать
Суть проблемы в следующем: 1. есть 2 изображения 1000*1000*24b jpeg надо определенные пиксели одного изображения заменить на соответствующие пиксели другого изображения т е изначально на экран выводится первое изображение а при нажатии кнопки определенные пиксели меняются и на экране мы должны видеть новое изображение которое мы в дальнейшем сможем сохранить при нажатии другой кнопки это надо реализовывать при помощи TImage или TPaintBox? 2. как проверить что пиксель определенного изображения является черным? p.s. в делфи я не силен поэтому был бы очень признателен если кто нибудь дал бы развернутый ответ как это реализовать |
01.12.2009, 08:07 | #2 |
Участник клуба
Регистрация: 28.03.2007
Сообщений: 1,814
|
Код:
пользуйтесь поиском такой вопрос уже был недавно. Ну а как сохранить вы наверно знаете |
01.12.2009, 11:19 | #3 |
Пользователь
Регистрация: 01.12.2009
Сообщений: 10
|
Я пробовал так делать но у меня выдает ошибку
Смог добить нужного результата только так Но тут у меня возникло сразу несколько проблем 1. картинки приходится брать 500 на 500 пикселей иначе при выводе изображение выходит за пределы экрана (т е я хотел чтоб программа работала с изображениями побольше) 2. проходит какое то время пока он выводит новое изображение, это он так долго читает картинки или это время уходит на выполнение цикла? 3. может можно это как то по другому реализовать? 4. я пробовал просто сохранять изображение через BT.SaveToFile(); чтоб потом просто открыть в TImage но программа выдает ошибку Код:
Последний раз редактировалось Stilet; 01.12.2009 в 16:04. |
01.12.2009, 16:00 | #4 |
*
Старожил
Регистрация: 22.11.2006
Сообщений: 9,201
|
|
02.12.2009, 08:53 | #5 |
Участник клуба
Регистрация: 28.03.2007
Сообщений: 1,814
|
|
02.12.2009, 10:30 | #6 | ||||
Телепат с дипломом
Старожил
Регистрация: 10.06.2007
Сообщений: 4,929
|
Цитата:
Цитата:
Цитата:
Цитата:
The future is not a tablet with a 9" screen no more than the future was a 9" black & white screen in a box. It’s the paradigm that survives. (Kroc Camen)
Проверь себя! Онлайн тестирование | Мой блог |
||||
03.12.2009, 09:34 | #7 |
Сумрачная тень
Форумчанин
Регистрация: 05.03.2009
Сообщений: 689
|
ошибка возможна, если изображение BT2 имеет меньшие размеры, чем BT1. Тогда получается выход за пределы диапазона массива в цикле. А чтобы картинка на всю форму влезала, можно ее сжать по размерам (Canvas.StretchDraw)
"ковыряю изнутри" (с)
|
04.12.2009, 17:03 | #8 |
Новичок
Джуниор
Регистрация: 10.11.2009
Сообщений: 2
|
Господа, всем доброго времени суток! У меня проблема немного похожа, но в моем случае мне нужно узнать количество черных пикселей и количество белых, причем желательно с использованием scanline. Если кто может - очень прошу помоч!
|
07.12.2009, 10:24 | #9 | |
Пользователь
Регистрация: 01.12.2009
Сообщений: 10
|
Цитата:
Ошибка возникала когда я сохранял файл с расширением .jpg а потом пытался тут же его открыть в TImage, чтобы изображение не выходило за пределы рабочей зоны, потом просто задал сохранение с разрешением .bmp и ошибка исчезла |
|
Похожие темы | ||||
Тема | Автор | Раздел | Ответов | Последнее сообщение |
Вопросы о некоторых задачах | k1r1ch | Паскаль, Turbo Pascal, PascalABC.NET | 3 | 20.10.2009 13:24 |
Изменение пикселей | Antitime | Мультимедиа в Delphi | 2 | 27.08.2009 17:37 |
Замена кода программы с Delhi5 на Delhi7 либо замена базы данных с Acessa на MySQL | DorianLeroy | Фриланс | 8 | 18.02.2009 18:52 |
Таблица пикселей | bl0w | Мультимедиа в Delphi | 1 | 19.01.2009 00:32 |
Извлечение RGB пикселей из bmp-файла | St0ne-c0ld | Фриланс | 7 | 16.10.2008 18:27 |