У меня есть несколько библиотек javascript (angular-ahdin, J-I-C), которые я могу использовать для сжатия изображения, загруженного пользователем, прежде чем я отправлю его на задний план.Алгоритм сжатия jpeg для достижения заданного размера целевого изображения
Все библиотеки, которые я видел, берут параметр качества и используют сжатие jpeg для уменьшения файла. Перед сжатием вы не представляете, какой размер файла будет иметь результирующее изображение, основанное на любом значении качества.
Моя идея - использовать алгоритм типа «двоичный поиск», чтобы попробовать разные качественные проценты, пока я наконец не получу изображение, которое находится под максимальным размером файла цели.
Он начнется с 50% качества jpeg. Если сжатое изображение находится под размером целевого файла, то переходите к качеству 75%, иначе переходите к качеству 25% и так далее. Это достигло целевого размера файла до степени детализации 1% в течение 6 итераций, и я бы остановился.
Предполагая, что нет библиотеки, которая уже имеет эту функцию, есть ли лучший способ, чем бинарный поиск? Есть ли какие-либо исследования изображений, которые показывают лучшее значение семени, чем 50%?
Дайте мне обзор, особенно. JPEG2000 – toddmo