реклама на сайте
подробности

 
 
2 страниц V   1 2 >  
Reply to this topicStart new topic
> BMP | Jpeg -> Sеream, Пребразование BMP, Jpg в H-файл в виде потока
SergeyGSM
сообщение Dec 21 2008, 14:18
Сообщение #1


Частый гость
**

Группа: Свой
Сообщений: 82
Регистрация: 9-06-06
Из: Украина
Пользователь №: 17 926



Не нашел в сети конвертора картинок в поток для армов с LCD ....
Ну как, они то есть, но не совсем подходят. у кого разрешение низкое, кто не поддерживает RGB 5:6:5

Вот решил сесть и написать свое.

Предлагаю ВАМ на "заплевать" мое творение за вечер.

Если будет интересно... предлагайте , что бы вы хотели туда добавить....
Пока реализовано:
1. Поддержка файлов BMP и Jpeg
2. автоматическое приведение размера картинки к требуемуму (320х240, 640х480)
3. автоматическое конвертирование цвета 16 BPP и 24 BPP (32 бита)
4. Генерация текста в окне (Copy-Paste в ваш H-файл)

в ближайшее время доделаю

1. Сохранение прямо в указанный файл
2. Сохранение всех настроек в реестре
3. Ну и ваши пожелания, если будут....

PS БЕЗ палитры! пока. Может будет 8 бит на пиксель, тогда добавлю палитру....

Сам файл....
Прикрепленные файлы
Прикрепленный файл  ConvBMP.rar ( 220.31 килобайт ) Кол-во скачиваний: 63
 
Go to the top of the page
 
+Quote Post
SergeyGSM
сообщение Dec 22 2008, 07:54
Сообщение #2


Частый гость
**

Группа: Свой
Сообщений: 82
Регистрация: 9-06-06
Из: Украина
Пользователь №: 17 926



новый релиз..... с доделками...

Да... НАРОД! А можно не просто скачивать, а еще и высказываться ?
Неплохо было бы довести до ума фичу, раз уж начал ее делать.... help.gif


Проверено
16BPP 640x480 на LPC2478 + LQ064V3DG01 (фотку могу выложить)
Просьба
У кого есть возможность... проверить 320х240 24BPP (32 Bits) и отписаться..
Прикрепленные файлы
Прикрепленный файл  ConvBMP101.rar ( 226.02 килобайт ) Кол-во скачиваний: 82
 
Go to the top of the page
 
+Quote Post
Dog Pawlowa
сообщение Dec 22 2008, 08:07
Сообщение #3


Гуру
******

Группа: Свой
Сообщений: 2 702
Регистрация: 14-07-06
Пользователь №: 18 823



Цитата(SergeyGSM @ Dec 22 2008, 11:54) *
Да... НАРОД! А можно не просто скачивать, а еще и высказываться ?

Можно. Цель сей программы? Реализация фоторамки на LPC2478?
Дело в том, что ARM7 производительностью не блещет.
Я, например, для GUI использую заранее подготовленные файлы.


--------------------
Уходя, оставьте свет...
Go to the top of the page
 
+Quote Post
aaarrr
сообщение Dec 22 2008, 08:16
Сообщение #4


Гуру
******

Группа: Свой
Сообщений: 10 713
Регистрация: 11-12-04
Пользователь №: 1 448



ИМХО, гораздо удобнее реализовать поддержку bmp с любым разрешением и глубиной цвета в программе для МК, а на PC только паковать файлы каким-нибудь LZ.
Go to the top of the page
 
+Quote Post
SergeyGSM
сообщение Dec 22 2008, 08:24
Сообщение #5


Частый гость
**

Группа: Свой
Сообщений: 82
Регистрация: 9-06-06
Из: Украина
Пользователь №: 17 926



Цитата(Dog Pawlowa @ Dec 22 2008, 12:07) *
Можно. Цель сей программы? Реализация фоторамки на LPC2478?
Дело в том, что ARM7 производительностью не блещет.
Я, например, для GUI использую заранее подготовленные файлы.


фоторамка тут не причем
подготовка "своих " битмапов для GUI - различные "побрякушки " на кнопочки и тд.....
это для чего я ее делал, а куда вы "пристроите" - вам решать.... biggrin.gif


Цитата(aaarrr @ Dec 22 2008, 12:16) *
ИМХО, гораздо удобнее реализовать поддержку bmp с любым разрешением и глубиной цвета в программе для МК, а на PC только паковать файлы каким-нибудь LZ.


может быть, а заголовки вам во флеше тоже нужны? и , если глубина цвета на вашем мк не такая как в файле? , еще и тратить время МК на конвертирование?
Это только те аргументы, которые сподвигли меня делать все это.....
Go to the top of the page
 
+Quote Post
aaarrr
сообщение Dec 22 2008, 08:50
Сообщение #6


Гуру
******

Группа: Свой
Сообщений: 10 713
Регистрация: 11-12-04
Пользователь №: 1 448



Цитата(SergeyGSM @ Dec 22 2008, 11:24) *
может быть, а заголовки вам во флеше тоже нужны?

Заголовки много не занимают, тем более в компрессированном виде.

Цитата(SergeyGSM @ Dec 22 2008, 11:24) *
и , если глубина цвета на вашем мк не такая как в файле? , еще и тратить время МК на конвертирование?

Зато не нужно специально конвертировать файлы (а их несколько сотен): просто взял любую bmp-шку, скопировал в каталог resources и все. Для элементов GUI лучше всего подходит 8bpp с оптимизированной палитрой, соответственно ресурсы МК нужны только на конвертирование самой палитры. Еще один плюс в том, что нет привязки к конфигурации железа - на экране можно ставить 8-16-24-32bpp ничего при этом не меняя в файлах ресурсов.
Go to the top of the page
 
+Quote Post
SergeyGSM
сообщение Dec 22 2008, 11:48
Сообщение #7


Частый гость
**

Группа: Свой
Сообщений: 82
Регистрация: 9-06-06
Из: Украина
Пользователь №: 17 926



Цитата(aaarrr @ Dec 22 2008, 12:50) *
Заголовки много не занимают, тем более в компрессированном виде.
Зато не нужно специально конвертировать файлы (а их несколько сотен): просто взял любую bmp-шку, скопировал в каталог resources и все. Для элементов GUI лучше всего подходит 8bpp с оптимизированной палитрой, соответственно ресурсы МК нужны только на конвертирование самой палитры. Еще один плюс в том, что нет привязки к конфигурации железа - на экране можно ставить 8-16-24-32bpp ничего при этом не меняя в файлах ресурсов.


Может быть... не спорю, хотя мог бы.....(палитра , заголовки.....) в вашем случае может быть и удобно через палитру.... но быстрее потоком.... все, все, все ..... не спорю.....
Go to the top of the page
 
+Quote Post
Hermes
сообщение Dec 23 2008, 18:36
Сообщение #8


Участник
*

Группа: Участник
Сообщений: 27
Регистрация: 17-11-08
Пользователь №: 41 692



protestiroval na olimex LPC-2478STK - rabotaet! Izobrajenie pokazivaetcya otlichno!
razreshenie - 320*240 24bit
Go to the top of the page
 
+Quote Post
SergeyGSM
сообщение Dec 24 2008, 13:35
Сообщение #9


Частый гость
**

Группа: Свой
Сообщений: 82
Регистрация: 9-06-06
Из: Украина
Пользователь №: 17 926



Цитата(Hermes @ Dec 23 2008, 22:36) *
protestiroval na olimex LPC-2478STK - rabotaet! Izobrajenie pokazivaetcya otlichno!
razreshenie - 320*240 24bit


спасибо огромное.


в установках выбирается разрешение TFT , а не размер картинки!!!

Кому нужны другие разрешения - пишите , доделаю.

Сообщение отредактировал SergeyGSM - Dec 24 2008, 13:35
Go to the top of the page
 
+Quote Post
Hermes
сообщение Dec 24 2008, 20:07
Сообщение #10


Участник
*

Группа: Участник
Сообщений: 27
Регистрация: 17-11-08
Пользователь №: 41 692



было бы супер если бы она сама умела определять разрешения
другими словами, если картинка 320*240 он её так и оставляет, если меньше, например, 16*16 то тоже оставляет, а если скажем 800*600 спрашивает в какое именно разрешение переделать...
было бы значительно удобней...
да и исходники бы не помешали бы wink.gif (но я не настаиваю, каждый сам решает что его собственное smile.gif )
Go to the top of the page
 
+Quote Post
SergeyGSM
сообщение Dec 25 2008, 21:30
Сообщение #11


Частый гость
**

Группа: Свой
Сообщений: 82
Регистрация: 9-06-06
Из: Украина
Пользователь №: 17 926



Цитата(Hermes @ Dec 25 2008, 00:07) *
было бы супер если бы она сама умела определять разрешения
другими словами, если картинка 320*240 он её так и оставляет, если меньше, например, 16*16 то тоже оставляет, а если скажем 800*600 спрашивает в какое именно разрешение переделать...
было бы значительно удобней...
да и исходники бы не помешали бы wink.gif (но я не настаиваю, каждый сам решает что его собственное smile.gif )


1. вы в самом начале "определяетесь" какого разрешения ваш LCD и устанавливаете в настройках.
Затем прога автоматом приводит картинку к 320 точкам (к примеру, если выбран режим 320х240) по горизонтали и пропорционально уменьшает кол- во строк (те соблюдает пропорцию). Это если картинка по горизонтали превышает 320 точек. Если картинка по вертикали больше 240 линий - то автоматом подгоняет под 240 линий. ТЕ ваша картинка по-любому будет на LCD полностью!
картинки меньшего разрешения не растягиваются - все остаеться как есть!

обратите внимание на первые два short | long в дампе , который генерит прога - это ширина и высота
в дальнейшем функция вывода потока в буфер LCD должна использовать эти значения в качестве аргументов , для определения размера области LCD, куда собственно и нужно выводить этот поток.

2. Прога писана на Delphi и без комментов , почти - есть желание копаться в коде?

800*600 добавить?
Go to the top of the page
 
+Quote Post
Ghost_V
сообщение Jan 4 2009, 13:22
Сообщение #12


Участник
*

Группа: Участник
Сообщений: 60
Регистрация: 16-11-07
Пользователь №: 32 388



А можно реальзовать вариант хранения картинок в формате jpeg в внутренней или внешней flash памяти контроллера, а при необходимости декодировать их в RGB и выводить на экран?. Если не требуется частого обновления картинок, например их всего 10 потребуется. тогда как реализвать декодер такой? хватит ресурсов LPC2478?
Go to the top of the page
 
+Quote Post
SergeyGSM
сообщение Jan 4 2009, 14:24
Сообщение #13


Частый гость
**

Группа: Свой
Сообщений: 82
Регистрация: 9-06-06
Из: Украина
Пользователь №: 17 926



Цитата(Ghost_V @ Jan 4 2009, 17:22) *
А можно реальзовать вариант хранения картинок в формате jpeg в внутренней или внешней flash памяти контроллера, а при необходимости декодировать их в RGB и выводить на экран?. Если не требуется частого обновления картинок, например их всего 10 потребуется. тогда как реализвать декодер такой? хватит ресурсов LPC2478?

у меня получалось smile.gif но ОЧЕНЬ медленно! 640х480 из jpeg вылазило на LCD ~1...1.2 sec
Go to the top of the page
 
+Quote Post
Ghost_V
сообщение Jan 5 2009, 08:46
Сообщение #14


Участник
*

Группа: Участник
Сообщений: 60
Регистрация: 16-11-07
Пользователь №: 32 388



Цитата(SergeyGSM @ Jan 4 2009, 17:24) *
у меня получалось smile.gif но ОЧЕНЬ медленно! 640х480 из jpeg вылазило на LCD ~1...1.2 sec

ну для меня это приемлемая скорость, тем более надо 320 на 240. а алгоритмом не поделетесь?(декодирования)
Go to the top of the page
 
+Quote Post
SergeyGSM
сообщение Jan 5 2009, 11:04
Сообщение #15


Частый гость
**

Группа: Свой
Сообщений: 82
Регистрация: 9-06-06
Из: Украина
Пользователь №: 17 926



Цитата(Ghost_V @ Jan 5 2009, 11:46) *
ну для меня это приемлемая скорость, тем более надо 320 на 240. а алгоритмом не поделетесь?(декодирования)

я бы с радостью.... да вот давно это было.. не помню где это у меня валяеться, тем более, что в нете полно примеров, сам из нета брал и переносил.... ссори, если сильно будет жать - посмотрю, но ничего не обещаю.....
Go to the top of the page
 
+Quote Post

2 страниц V   1 2 >
Reply to this topicStart new topic
1 чел. читают эту тему (гостей: 1, скрытых пользователей: 0)
Пользователей: 0

 


RSS Текстовая версия Сейчас: 17th June 2025 - 20:47
Рейтинг@Mail.ru


Страница сгенерированна за 0.01505 секунд с 7
ELECTRONIX ©2004-2016