|
|
|
Модификация bmp
|
|||
|---|---|---|---|
|
#18+
Товарищи, всех поздравляю с Новым Годом!!!!! Есть задача.. не знаю даж как подойти к ее решению. Вот подумал, что мож у кого появятся светлые мысли. Итак: Есть исходный материал, представляющий собой граф. файлы в формате bmp. Получены они путем сканирования геологических карт. На этих картах нанесена координатная сетка. При сканировании изображение искажается и в итоге, линии сетки вовсе не параллельны/перпендикулярны, а как-то странно расположены под углом. Вместе с линиями сетки (понятно) искажаются и сами карты. Так вот идея по "исправлению" этих файлов заключается в следующем: В программу импортируется этот файл. Далее создается некая виртуальная сетка (какими-либо средствами разработки. не важно какими.) и накладывается на bmp файл. Далее узлы виртуальной сетки вручную совмещаются с узлами на файле. Далее сетка (уже "прицепленная" к файлу) востанавливает свое исходное состояние и вместе с этим расстягивает/сжимает/поворачивает/итд bmp файл, тем самым вроде как приводя его в нормальный вид. Как реализовать сетку, ее наложение и ручное совмещение, это я представляю, а вот как реальзовать модификацию BMP???? Вот в чем вопрос! ПА-МА-ГИ-ТЕЕЕЕЕЕЕЕЕЕЕ!!!!!!!!!!!!!!!! ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 03.01.2007, 11:07 |
|
||
|
Модификация bmp
|
|||
|---|---|---|---|
|
#18+
1. Светлые мысли скорее всего появятся у людей, которые были связаны с ГИС. Наверняка у них эта проблема имела место. 2. Лично мне, кроме термина морфинг больше ничего в голову не приходит. IMHO можно с этого конца подойти к проблеме, хотя.. это может-быть и не самый быстрый путь. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 03.01.2007, 11:15 |
|
||
|
Модификация bmp
|
|||
|---|---|---|---|
|
#18+
гм.... а под морфингом имеется ввиду чего-то конкретное или как? Справка словаря яндекса: Морфинг — технология, позволяющая преобразовывать одно изображение в другое изображение с сохранением некоторых параметров... Как ентон морфинг осуществить - вот ведь в чем загадка... ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 03.01.2007, 11:50 |
|
||
|
Модификация bmp
|
|||
|---|---|---|---|
|
#18+
Как реализовать сетку, ее наложение и ручное совмещение, это я представляю, а вот как реальзовать модификацию BMP???? Как реализовать растяжение/сжатие координат (x,y) представляешь? BMP - это массив (x,y) с значением цвета в точке.. по полученной функции преобразования( "Как реализовать сетку, ее наложение и ручное совмещение, это я представляю" ) строишь преобразованную бмпшку.. Я пока вижу такие проблемы: 0) Функция растяжения задающаяся наложением сетки. очевидно сетку можно разбить на кусочки (и считать что растяжение линейно по этим кусочкам).. 1) Совмещение пикселей разных цветов при сжатии - 2(и более) пикселей в один 2) Закраска пикселей при растяжении. реализация этих 2 - это уже от твоей задачи зависит. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 03.01.2007, 12:04 |
|
||
|
Модификация bmp
|
|||
|---|---|---|---|
|
#18+
Когда-то решал похожую задачу. Привожу код, может поможет. Сжимает, расширает и сдвигает. Следует выставить опцию компилятора - выравнивание на байт. Код: plaintext 1. 2. 3. 4. 5. 6. 7. 8. 9. 10. 11. 12. 13. 14. 15. 16. 17. 18. 19. 20. 21. 22. 23. 24. 25. 26. 27. 28. 29. 30. 31. 32. 33. 34. 35. 36. 37. 38. 39. 40. 41. 42. 43. 44. 45. 46. 47. 48. 49. 50. 51. 52. 53. 54. 55. 56. 57. 58. 59. 60. 61. 62. 63. 64. 65. 66. 67. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 04.01.2007, 21:06 |
|
||
|
Модификация bmp
|
|||
|---|---|---|---|
|
#18+
Я-бы вынес вычисления с константами за границы цикла. Думаю, так можно получить бонус в виде увеличения скорости линейного преобразования. Правда цифр конкрентых не знаю. Это надо проверять экспериментально. Код: plaintext 1. 2. 3. 4. 5. 6. 7. 8. 9. 10. 11. 12. 13. 14. 15. 16. 17. 18. 19. 20. 21. 22. 23. 24. 25. 26. 27. 28. 29. 30. 31. 32. P.S. Можно избавиться от нескольких разностей в числителе, если изменить границы цикла ИМХО. P.P.S. Проклятая привычка всё оптимизировать! Рррррр! ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 04.01.2007, 22:41 |
|
||
|
|

start [/forum/topic.php?fid=16&msg=34237617&tid=1346342]: |
0ms |
get settings: |
6ms |
get forum list: |
15ms |
check forum access: |
3ms |
check topic access: |
3ms |
track hit: |
151ms |
get topic data: |
9ms |
get forum data: |
3ms |
get page messages: |
44ms |
get tp. blocked users: |
1ms |
| others: | 198ms |
| total: | 433ms |

| 0 / 0 |
