Сериализация BigDecimal в GWT

Это зависит полностью от того, как умный Вы хотите, чтобы алгоритм был.

, Например, вот некоторые проблемы:

  • кадрированные изображения по сравнению с необрезанным изображением
  • изображения с текстом, добавленным по сравнению с другим без
  • зеркальные изображения

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

  1. масштаб к чему-то маленькому, как 64x64 или 32x32, игнорирует соотношение сторон, использует алгоритм масштабирования объединения вместо самого близкого пикселя
  2. , масштабируют цветовые диапазоны так, чтобы самый темный был черным, и самый легкий белый
  3. , поворачивают и зеркально отражают изображение так, чтобы самый легкий цвет был верхним левым, и затем верхний правый является затем более темным, нижний левый является затем более темным (в максимально возможной степени, конечно)

Редактирование А , алгоритм масштабирования объединения является тем, что при уменьшении масштаба 10 пикселей до каждый сделает это с помощью функции, которая подражает всех тех 10 пикселей и комбинирует их в одного. Может быть сделан с алгоритмами как усреднение, среднее значение или более сложные как шлицы bicubic.

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

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

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

5
задан Domchi 29 October 2009 в 18:30
поделиться

2 ответа

Вот созданная мной реализация пакета GWT java.math:

http://code.google.com/p/gwt-java-math/

Он основан на реализации Apache Harmony, но был изменен для работы эффективно в Java Script, используя двойные, а не длинные.

Он включает почти полную реализацию BigInteger, BigDecimal, MathContext, RoundingMode и Random.

9
ответ дан 18 December 2019 в 06:12
поделиться

Чтобы ответить на свой вопрос, я только что нашел проект gwt-math , который добавляет поддержку BigDecimal и решает мою проблему ...

Также здесь - официальный запрос на поддержку BigDecimal в GWT.

3
ответ дан 18 December 2019 в 06:12
поделиться
Другие вопросы по тегам:

Похожие вопросы: