LINUX.ORG.RU

Столько просмотрщиков картинок... И ни одного годного


2

3

В смысле какая проблема реализовать масштабирование алгоритмом spline? Да, это наверное нечто космическое, ведь большинство просмотрщиков до сих пор применяют билинейный метод, а также Lanczos3, характерный для более «продвинутых» аналогов, если там еще есть переключалка на бикубический и Lanczos2 - так вообще сказка. Но нужно то совсем не это, нужен spline. Может такой уже есть?

Ответ на: комментарий от Deathstalker

Ristretto

Ага, еще бы всякие школьные поделия имели такой функционал

Moderators ★★
() автор топика

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

Tark ★★
()
Ответ на: комментарий от Tark

Представь сколько времени и памяти займет переключение стрелочками между картинками с интерполяцией сплайнами

Это не тяжелый алгоритм

Moderators ★★
() автор топика
Ответ на: комментарий от Moderators

Это не тяжелый алгоритм

Достаточно тяжелый и не особо стабильный. Я открываю редактор и колесиком мыши увеличиваю изображение, оно увеличивается плавно в 10 раз. Как это будет выглядеть при интерполяции сплайнами, если ты не знаешь сколько я буду крутить колесиками и надо выдавать 30 fps, но чтобы изображение не мерцало?

Tark ★★
()
Ответ на: комментарий от Tark

Достаточно тяжелый и не особо стабильный.

У кого комп слишком слабый для этого включат другой алгоритм. Но ты то хоть признаешь, что spline качественнее?

Я открываю редактор и колесиком мыши увеличиваю изображение, оно увеличивается плавно в 10 раз. Как это будет выглядеть при интерполяции сплайнами, если ты не знаешь сколько я буду крутить колесиками и надо выдавать 30 fps, но чтобы изображение не мерцало?

А это уже совсем другая история...

Moderators ★★
() автор топика
Ответ на: комментарий от Moderators

У кого комп слишком слабый для этого включат другой алгоритм. Но ты то хоть признаешь, что spline качественнее?

Не признаю существенного повышения качества, мыльнее это да. Приведи пруф качества из реальной жизни плиз по сравнению с обычном зумом того же школоristretto. Желательно три примера, манга, фотка и текст.

А это уже совсем другая история...

А нахурма нужна интерполяция в просмотрщике картинок как не для зума? Скриншоты из пикимон йеллоу на полный экран смотреть?

Tark ★★
()
Ответ на: комментарий от Tark

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

Мыльнее билинейного?

Приведи пруф качества из реальной жизни плиз по сравнению с обычном зумом того же школоristretto. Желательно три примера, манга, фотка и текст.

Какой алгоритм?

А нахурма нужна интерполяция в просмотрщике картинок как не для зума?

У тебя все графические файлы соответствуют разрешению монитора?

Moderators ★★
() автор топика

Учи матчасть.

большинство просмотрщиков до сих пор применяют билинейный метод

Билинейный сплайн.

если там еще есть переключалка на бикубический

Внезапно, сплайн.

Но нужно то совсем не это, нужен spline.

Так какой конкретно сплайн тебе нужен? Вот ffmpeg говорит, что spline есть "natural bicubic spline", т.е. частный случай бикубического сплайна, который ты считаешь говном.

Чем тебя не устраивают bicubic и lanczos? Где конструктив?

это наверное нечто космическое

d ★★★★
()
Ответ на: комментарий от d

Билинейный сплайн.

А где это указано хотя бы у какого-нибудь одного вьювера? Предыдущие ораторы не дадут соврать, это космос

Так какой конкретно сплайн тебе нужен?

В ffmepg все эти алгоритмы представлены все-таки отдельно

Moderators ★★
() автор топика

тоже подумываю запилить,ибо даже дохлые армы имеют плавный зум в реальном времени любой картинки хоть 3к*3к (оперативка 64 мб и 200мгц арм) там даже офисные документы и вебстраницы также зумятся(рендерется а картинку в реалтайме и она показывается)

а на линуксах,да и на винде-нет норм виверов

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

может сделаю в ближайший месяц

lwx51033
()

В OpenGL есть даже NURBS, не говоря о более простых сплайнах.

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

Возьми, да накатай патч к тому же feh!

anonymous
()
Ответ на: комментарий от anonymous

Натравил ldd на feh. Наркоманы!!! Они не используют openGL!

Вот что за идиоты?

anonymous
()
Ответ на: комментарий от Moderators

Можешь также сконвертировать картинку для дальнейшего сравнения:

 dmitry@Dmitry~/К/Ждун> ffplay -i C3G2DCGW8AI8K_D-768x960.jpg -vf scale=320:-1:sws_flags=spline spline.jpg
ffplay version 3.2.4 Copyright (c) 2003-2017 the FFmpeg developers
  built with gcc 4.9.4 (Gentoo 4.9.4 p1.0, pie-0.6.4)
  configuration: --prefix=/usr --libdir=/usr/lib --shlibdir=/usr/lib --docdir=/usr/share/doc/ffmpeg-3.2.4/html --mandir=/usr/share/man --enable-shared --cc=i686-pc-linux-gnu-gcc --cxx=i686-pc-linux-gnu-g++ --ar=i686-pc-linux-gnu-ar --optflags='-O2 -march=amdfam10 -pipe -fomit-frame-pointer -mtune=amdfam10' --disable-static --enable-avfilter --enable-avresample --disable-stripping --enable-version3 --disable-indev=v4l2 --disable-outdev=v4l2 --disable-indev=oss --disable-outdev=oss --enable-bzlib --disable-runtime-cpudetect --disable-debug --disable-gcrypt --disable-gnutls --disable-gmp --enable-gpl --enable-hardcoded-tables --enable-iconv --disable-lzma --enable-network --disable-openssl --enable-postproc --enable-libsmbclient --enable-ffplay --enable-sdl2 --disable-vaapi --disable-vdpau --enable-xlib --enable-libxcb --enable-libxcb-shm --enable-libxcb-xfixes --enable-zlib --disable-libcdio --disable-libiec61883 --disable-libdc1394 --disable-libcaca --disable-openal --enable-opengl --disable-libv4l2 --disable-libpulse --disable-libopencore-amrwb --disable-libopencore-amrnb --disable-libfdk-aac --disable-libopenjpeg --disable-libbluray --disable-libcelt --disable-libgme --disable-libgsm --disable-mmal --disable-libmodplug --disable-libopus --disable-libilbc --disable-librtmp --disable-libssh --disable-libschroedinger --disable-libspeex --enable-libvorbis --disable-libvpx --disable-libzvbi --disable-libbs2b --disable-chromaprint --disable-libebur128 --disable-libflite --enable-frei0r --disable-libfribidi --disable-fontconfig --disable-ladspa --disable-libass --enable-libfreetype --disable-librubberband --disable-libzimg --disable-libsoxr --enable-pthreads --disable-libvo-amrwbenc --enable-libmp3lame --disable-libkvazaar --disable-nvenc --disable-libopenh264 --disable-libsnappy --enable-libtheora --disable-libtwolame --disable-libwavpack --disable-libwebp --enable-libx264 --disable-libx265 --enable-libxvid --disable-amd3dnow --disable-amd3dnowext --disable-aesni --disable-avx --disable-avx2 --disable-fma3 --disable-fma4 --disable-mmx --disable-mmxext --disable-sse --disable-sse2 --disable-sse3 --disable-ssse3 --disable-sse4 --disable-sse42 --disable-xop --cpu=amdfam10 --disable-doc --disable-htmlpages --enable-manpages
  libavutil      55. 34.101 / 55. 34.101
  libavcodec     57. 64.101 / 57. 64.101
  libavformat    57. 56.101 / 57. 56.101
  libavdevice    57.  1.100 / 57.  1.100
  libavfilter     6. 65.100 /  6. 65.100
  libavresample   3.  1.  0 /  3.  1.  0
  libswscale      4.  2.100 /  4.  2.100
  libswresample   2.  3.100 /  2.  3.100
  libpostproc    54.  1.100 / 54.  1.100
Argument 'spline.jpg' provided as input filename, but 'C3G2DCGW8AI8K_D-768x960.jpg' was already specified.
Dmitry_Sokolowsky ★★★★★
()
Ответ на: комментарий от SjZ

Vim, Emacs, mc, Synapse, Blender, Inkscape, Libre Office, остальное уже упомянули.

peregrine ★★★★★
()
Ответ на: комментарий от Dmitry_Sokolowsky
ffplay
Argument 'spline.jpg' provided as input filename

Зачем для ffplay задал выходной файл?

Moderators ★★
() автор топика
Ответ на: комментарий от Deleted

просто им это лично не особо нужно, чтобы заморачиваться :)

Harald ★★★★★
()
Ответ на: комментарий от Moderators

Мыльнее билинейного?

В определенном смысле да, потому что он влияет не только на соседние пиксели.

Какой алгоритм?

Сравни сплайны ffmpeg с базовым алгоритмом ristretto, ну той которое ты назвал школиеподелием.

У тебя все графические файлы соответствуют разрешению монитора?

Нет, но размытое нех на полный экран смотреть желания нет.

Tark ★★
()

Ну если хочется идеала то нужно восстанавливать оригинал по Котельникову и повторно оцифровывать.

cvv ★★★★★
()

dk, а какие алгоритмы масштабирования обычно применяются в софте для создания и просмотра панорам? :P

Harald ★★★★★
()
Ответ на: комментарий от anonymous

В тему призывается andreyu.

На данный момент изыскания выявили необходимость в применении sinc и area в алгоритме уменьшения изображения. Желательно с переключалкой. Каждый их них хорош по-своему, и дает значительно более четкое изображение в отличие от «стандартных» алгоритмов, это уж с ffmpeg/ffplay люобй желающий может сам легко протестить

Moderators ★★
() автор топика

ТС, все это дрочево бессмысленное.

Как со 100500 плеерами.

dk-
()
Ответ на: комментарий от anonymous00

Где ты видел, чтоб предлагатели в белом пальто стоя на табуретке писали патч?

dk-
()
Ответ на: комментарий от Harald

я за 55 запилю. моё предложение может и не более выгодное, но весьма конкурентноспособное, учитывая что я 5 уже сбросил в процессе набора этого сообщения.

AndreyKl ★★★★★
()

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

PPP328 ★★★★★
()
Вы не можете добавлять комментарии в эту тему. Тема перемещена в архив.