Помогите пожалуйста написать алгоритм

12
АМ
На сайте с 16.08.2007
Offline
2
1450

Тут очень много умных людей на форуме, пишуших и окучивающих гугл как дитё.

Может быть сможете решить эту задачку, над которой мы ломаем голову уже несколько месяцев.

Вот такая проблемка.

Есть список всех разрешений телефонов.

Нам необходимо взять любую картинку, обои, фото или еще чего и адаптировать для удобного просмотра на мобильном телефоне под любое разрешение.

Многие телефоны не поддерживают ресайз картинок и поэтому, в ходе тестов было решено что погрешность в 5-ть пикселей допустима (максимум 10-ть если задача не

решается при 5-и). При нормальных разрешениях это практически не заметно.

Наша задача создать определённое количество масок пропорций (их не должно быть больше 10-и, в идеале 4-6), что бы из них можно было из большой картинки при

имеющихся группах создать картинки, удовлетворяющие любому разрешению экрана.

Т.е. нарезаются из картинки 1600 на 1200 4-е маски основных разрешений, из которых потом автоматом скриптом ресайзятся в остальные разрешения и раскидываются по

группам.

Наиболее используемые разрешения, которые обязательно должны присутствовать:

90x40

101x80

120x160

128x128

128x160

132x176

160x160

176x208

176x220

240x320

Абсолютно все разрешения экранов мобильных телефонов, смартфонов, кпк и т.д. ну плюс еще можно взять максимальное 800 на 600

+------------+

| resolution |

+------------+

| 101x111 |

| 101x33 |

| 101x54 |

| 101x64 |

| 101x65 |

| 101x67 |

| 101x80 |

| 102x80 |

| 104x208 |

| 110x72 |

| 111x100 |

| 111x106 |

| 112x64 |

| 112x76 |

| 112x84 |

| 116x181 |

| 118x128 |

| 118x256 |

| 119x64 |

| 120x108 |

| 120x112 |

| 120x120 |

| 120x124 |

| 120x128 |

| 120x130 |

| 120x143 |

| 120x144 |

| 120x160 |

| 120x96 |

| 123x69 |

| 125x96 |

| 128x100 |

| 128x112 |

| 128x120 |

| 128x121 |

| 128x127 |

| 128x128 |

| 128x131 |

| 128x141 |

| 128x143 |

| 128x144 |

| 128x146 |

| 128x160 |

| 128x256 |

| 128x40 |

| 128x50 |

| 128x64 |

| 128x83 |

| 128x92 |

| 128x95 |

| 128x96 |

| 128x97 |

| 130x130 |

| 132x126 |

| 132x136 |

| 132x144 |

| 132x160 |

| 132x162 |

| 132x176 |

| 132x65 |

| 136x120 |

| 140x160 |

| 144x176 |

| 150x100 |

| 160x100 |

| 160x120 |

| 160x128 |

| 160x160 |

| 160x180 |

| 162x216 |

| 172x162 |

| 176x144 |

| 176x157 |

| 176x176 |

| 176x178 |

| 176x182 |

| 176x183 |

| 176x184 |

| 176x192 |

| 176x198 |

| 176x208 |

| 176x220 |

| 176x240 |

| 177x223 |

| 193x196 |

| 208x104 |

| 208x208 |

| 208x320 |

| 216x162 |

| 220x176 |

| 220x220 |

| 230x240 |

| 240x160 |

| 240x240 |

| 240x252 |

| 240x255 |

| 240x260 |

| 240x266 |

| 240x268 |

| 240x269 |

| 240x270 |

| 240x320 |

| 240x400 |

| 256x240 |

| 320x240 |

| 320x320 |

| 320x480 |

| 324x352 |

| 34x43 |

| 352x416 |

| 360x120 |

| 480x240 |

| 480x272 |

| 480x320 |

| 480x640 |

| 490x165 |

| 640x200 |

| 640x240 |

| 640x320 |

| 640x480 |

| 64x112 |

| 64x128 |

| 64x98 |

| 72x26 |

| 770x300 |

| 80x120 |

| 84x48 |

| 90x128 |

| 90x40 |

| 90x50 |

| 96x117 |

| 96x120 |

| 96x24 |

| 96x40 |

| 96x44 |

| 96x48 |

| 96x49 |

| 96x52 |

| 96x64 |

| 96x65 |

| 96x68 |

| 96x72 |

| 96x90 |

| 96x91 |

| 96x92 |

| 97x56 |

| 98x64 |

| 98x67 |

+------------+

Заранее премного благодарен!

Куплю Эдалтный Европейский дорвейный траф. Много. Дорого. За подробностями ICQ: 480-959-827
S
На сайте с 27.11.2003
Offline
37
#1

ну так а что надо то? ф-ция чтобы она вам картинки масштабировала или что?

есть набор пхп-шных ф-ций который имеет ужимать (с краями, без, выравнивать, растягивать и проч.). его только из библиотеки вытащить надо.

С уважением, Сергей. Закупки (http://sendoffer.ru) \\ Объявления (http://i.sendoffer.ru) \\ Ништяк-сайты (http://siteum.ru)
АМ
На сайте с 16.08.2007
Offline
2
#2

Скрипты для нарезки и ресайза у нас есть, трабла именно в том, что бы создать начальные несколько масок, вырезать их и дальше уже скриптами без человека обрабатывать.

Но вроде вот подсказали алгоритм привести всё к пропорции, обозначить пропорции X, сделать несколько расчётов при увеличении коэффициента погрешности и таким образом эксперементировать пока не получим приемлимое кол-во масок. Но в любом случае нужен программист, который всё это осилит ...

UA
На сайте с 19.06.2006
Offline
100
#3

Почему скрипт не может ресайзить всё из одной, самой большой картинки? Зачем делать четыре разного размера и ресайзить из них?!

АМ
На сайте с 16.08.2007
Offline
2
#4

Если б нейронные сети развились до того, что б могли идентифицировать что вырезать - канечно тогда бы можно было автоматизировать полностью.

[Удален]
#5
Ugnich Anton:
Почему скрипт не может ресайзить всё из одной, самой большой картинки? Зачем делать четыре разного размера и ресайзить из них?!

Действительно?.. зачем делать в два этапа?

АМ
На сайте с 16.08.2007
Offline
2
#6

Потому что ИИ нормальный до сих пор не сделали :(

ПЗ
На сайте с 10.10.2006
Offline
92
#7

а причем тут ИИ, когда естественным интеллектом можно придумать ресайз и кроп, который будет оставлять всегда центр.

Автомобили в России (http://www.autobb.ru/). Спецтехника BIZ - вся строительная, дорожная, коммунальная техника (http://www.spectehnika.biz/) и другая спецтехника в одном месте.
S
На сайте с 27.11.2003
Offline
37
#8
Павел Зотов:
а причем тут ИИ, когда естественным интеллектом можно придумать ресайз и кроп, который будет оставлять всегда центр.

вот и мне интересно, зачем ядреной бомбой воробьев глушить :)

АМ
На сайте с 16.08.2007
Offline
2
#9

Ок.

Попробуйте нарежте автоматом 10 картинок разных под эти разрешения:

90x40

101x80

120x160

128x128

128x160

132x176

160x160

176x208

176x220

240x320

И будете ли вы отверждать, что не отрежется какая-то важная часть?

S
На сайте с 27.11.2003
Offline
37
#10
АТГМ:

И будете ли вы отверждать, что не отрежется какая-то важная часть?

этого никто утверждать не будет. но для того чтобы что-то попробовать сделать, сначала нужны исходные данные

12

Авторизуйтесь или зарегистрируйтесь, чтобы оставить комментарий