Які практично актуальні відмінності між різними методами перекомпонування зображення?


22

ImageResizeФункція Mathematica підтримує багато методів перекомпонування .

Не будучи знайомим з цією областю, поза найближчим сусідом, білінеарною, двоквадратичною та двостулковою (що очевидно з назви), я втрачаюсь.

Чи можете ви вказати мені на якесь джерело, яке пояснить основні (математичні) відмінності між цими методами, і зокрема вказати на практичні відмінності (наприклад, показавши зразкові зображення, де вибір методу дійсно має значення та введе помітні відмінності)?

У мене немає фону обробки сигналів, тому я вважаю за краще «ніжне» і стисле вступ :-)


Я скопію тут список ImageResizeметодів, щоб ті "ледачі" натиснули на посилання:

  • "Найближчий" найближчий сусід перестановка

  • "Білінеарна" білінеарна інтерполяція

  • Інтерполяція «двоквадратичного» двоквадратичного сплайна

  • Інтерполяція двостулкових сплайнів «двоярусна»

  • "Гауссова" гауссова перестановка

  • Багатовимірний метод інтерполяції "Ланцоса" Ланцоса

  • Інтерполяція косинусів «косинус»

  • Інтерполяція піднятого косинуса "Хеммінг"

  • Інтерполяція "Ханна" підняла косинус Ханна

  • "Блекмен" трикратний узагальнений піднятий косинус

  • Інтерполяція трикутного вікна "Бартлетт"

  • Інтерполяція Вельча в квадраті "Коннес"

  • Квадратна інтерполяція Вельча "Велч"

  • "Парзен" кусково-кубічна інтерполяція

  • "Кайзер" модифікував Бессельську інтерполяцію "нульового порядку"


1
Питання мені здається занадто широким. Було б добре поділити його на конкретні методи та задати конкретні запитання щодо методів, з якими у вас є проблеми.
mirror2image

Кілька дотичних до вашого запитання, ви можете знайти це зображення порівняння підвищує дискретизації цікаво: general-cathexis.com/interpolation/index.html
Mr.Wizard

Я хотів би звернути увагу, що всі методи, які ви написали, є космічними інваріантами. Я вважаю, що більш сучасні методи підняття наборів є Edge Aware, і це також Space Space.
Рой

Ось передостаннє перетворення. Його називають перетворенням PB, і воно перетворює зображення шляхом бікубічного прогнозування значень відповідно до ймовірності того, що має відбутися після тренування на багатьох інших зображеннях. Ось як виглядає [результат] [1]. [1]: v1.std3.ru/57/a9/…
MyBushisaNeonJungle

Відповіді:


12

I(m,n)m,nm,n

I~(m,n)=m=mw+1m+w n=nw+1n+wI(m,n) f(mm,nn)

I~I(x,y)

f(m,n)

Так само, як і у віконних функціях для тимчасових сигналів, легко отримати суть того, що робить ядро ​​інтерполяції зображення, переглянувши його частотну характеристику. З моєї відповіді на функції вікна :

Два основні фактори, які описують функцію вікна:

  1. Ширина основної долі (тобто, на якій частоті бін є потужність, наполовину менша від максимальної реакції)
  2. Ослаблення бічних часток (тобто, наскільки далеко вниз розташовані бічні частки від головної долі). Це говорить вам про спектральний витік у вікно.

Це майже справедливо для інтерполяційних ядер. Вибір - це в основному компроміс між частотною фільтрацією (ослаблення бічних куль), просторовою локалізацією (шириною магістралі) та зменшенням інших ефектів, таких як дзвінок (ефект Гіббса), згладжування, розмивання тощо. Наприклад, ядро ​​з коливаннями, такими як ядро ​​sinc і ядро ​​Lanczos4 внесуть "дзвінок" у зображення, тоді як гауссова переустановка не введе дзвінок.

Ось спрощений приклад у Mathematica, який дозволить вам побачити ефекти різних інтерполяційних функцій:

true = ExampleData[{"TestImage", "Lena"}];
resampling = {"Nearest", "Bilinear", "Biquadratic", "Bicubic", 
   "Gaussian", "Lanczos", "Cosine", "Hamming", "Hann", "Blackman", 
   "Bartlett", "Connes", "Welch", "Parzen", "Kaiser"};
small = ImageResize[true, Scaled[1/4]];

trueI(x,y)smallI(m,n)I(m,n)I~(m,n)

введіть тут опис зображення введіть тут опис зображення

Ви самі бачите, що різні інтерполяційні функції мають різний вплив. Найближчі та кілька інших мають дуже грубі функції, і ви по суті можете бачити нерівні лінії (див. Зображення в повному розмірі, а не відображення сітки). Бікубічні, двоквадратичні та Парзен долають це, але вносять багато розмиття. З усіх ядер Lanczos здається (візуально) найпривабливішим і тим, що робить найкращу роботу партії.

Я спробую розширити цю відповідь і надам більш інтуїтивні приклади, що демонструють відмінності, коли у мене є час. Ви можете прочитати цю досить просту та інформативну статтю, яку я знайшов в Інтернеті (PDF-попередження).


Яку нотку інфіксації я бачу!?! : ->
Mr.Wizard

@ Mr.Wizard Я сказав, що я зроблю чесну спробу :)
Lorem Ipsum
Використовуючи наш веб-сайт, ви визнаєте, що прочитали та зрозуміли наші Політику щодо файлів cookie та Політику конфіденційності.
Licensed under cc by-sa 3.0 with attribution required.