Pull to refresh
3
0.1
Send message

Добавлю, было интересно чего можно добиться с архиватором получше: qoi.zpaq получился 13.3mb (73%)

На счёт qoi, перевод из png в qoi картинок из статьи приводит изменению их размера с 18.1mb до 18.3, то есть размер увеличивается на 1%.

qoi, однако, хорошо жмётся архиваторами. qoi.zip = 15.8mb (87%, то есть как OxiPNG+Zopfli), а qoi.7z = 14.9mb (82%, что лучше, чем 86% у avif, но хуже 66% у webp и 60% у jpgxl).

Если GOG не изменил своим принципам, то только игры без защиты он и продаёт, это фишка этого магазина.

если не ошибаюсь, то там была очень ограниченная палитра, 8 или 10 цветов кажется

Поправка: 16 цветов.

Интересно было бы посмотреть как с этим пиксельартом справился бы QOI. Вроде бы он тоже почти RLE и также дополнительно хорошо сжимается стандартными brotli или gzip.

Обычно растягивают либо так: Math.round(v / 31 * 255)) либо так: (v << 3) + (v >> 2). Но я считаю все способы неправильными.

Картинки в посте слишком мелкие, текст с двух из них невозможно прочесть.

Ну нет. Преувеличиваете. Если знаешь один язык, то следующие изучаются проще.

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

Если длительность выполнения i-той задачи вычисляется как дельта между её стартом и финишем, то вычислять с этим показателем «стоимость конкуренции» совершенно неправильно, так как их время перекрывается из-за переключения задач.

И я не смотрел код, и не очень разбираюсь в этих языках, но похоже, что вы сраниваете лёгковесные потоки Go, которыми управляет и раскидывает по процессам системы сам Go; со спавнингом полноценных системных процессов в Rust, где ими управляет операционка, их не рекомендуется создавать много. Прошу знающих подтвердить или опровергнуть.

Будем честны, фуррифокс на андройд:

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

  2. Экзотика под которую никто не тестирует сайты, неожиданные обновления ленты хабра во время прокрутки, срабатывания не тех кнопок, глючный ввод текста при наборе комментариев, даже некоторые сайты отключают яваскрипт-функционал.

  3. Смог растерять даже свою фишку — аддоны. Ни юзерстилей, ни юзерскриптов там больше не найти. Кроме ДаркРидера (котрый не всем сайтам подходит) полезных остались там: баннерорезка и поиск по картинкам.

Андройд-клиент у них тоже приходится регулярно перезапускать, иначе лаги увеличиваются до невозможности. Это помимо кучи общеизвестных многолетних разных мелких багов, расписывать не буду — хабр не жалобная книга.

А ещё есть более молодой Rust, в коем есть кажется совсем всё: дженерики могут как рабухать, так и работать через виртуальные методы; информация о типах может как стираться, так и так и извлекаться из обобщенного типа; не знаю как трейты относятся к *вариантности, но может быть одновременно несколько требований к разным трейтам; а еще есть макросы, которые как шаблоны из сишки приводят к нечитаемым ошибкам.

Готов поспорить, что идеальное замыливание перед downsampling-ом — это фильтр Box. Соответственно: box filter + downsampling = supersampling :)

Не слегка.

Обычная интерполяция при уменьшении более чем в 2 раза становится неприменимой. Например, при уменьшении в 3 раза, из квадрата 3х3 пикселей в результирующую картинку будет записан только центральный пиксел. Это совершенно верно, если считать пиксель точкой, но абсолютно неприемлимо на практике — границы на изображении становятся рублеными, наростает шум. Поэтому обычно для уменьшения используются суперсемплинг, мультисемплинг или сверточные фильтры — которые усредняют значения всех входных пикселей в площади выходного пикселя. Теоретически возможна постобработка фильтрами гаусса или даже fxaa к изображению уменьшенному обычной интерполяцией, но такого кроме как в статьях по обработке изображений я не видел.

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

Позвольте не согласиться. От перекрестных помех, как и от баеровского муара, так и от других артефактов, на которые вы указываете как на норму, конструкторы фотоматриц пытаются уйти. Иначе не ставили бы микролинзы и не ставили бы перегородки между пикселями. Тем более это не справедливо для уменьшенных изображений после ресайза, нарисованных в графическом редакторе, или как-то иначе синтезированных, коих гораздо больше чем необработанных кадров с камеры.

Между прочим, такой алфавит, в котором буквы соответствуют звукам, есть — международный фонетический алфавит. И мне, диванному эксперту, непонятно почему никто не хочет заменять алфавиты на МФА.

А результат показать?

Формат же обновился, перед переводом можно было бы привести текст к соответствию спецификации, вы ее упомянули, но наверно не читали.

Information

Rating
2,701-st
Registered
Activity