Білінійна інтерполяція

Відомо значення функції в чотирьох червоних точках. Значення функції в зеленій точці потрібно інтерполювати.
Приклад білінійної інтерполяції в одиничному квадраті. Інтерпольовані значення представлені кольором.

Білінійна інтерполяція — узагальнення лінійної інтерполяції для функції двох змінних. Ідея в тому, що проводиться лінійна інтерполяція по одній осі, а потім по іншій осі.

Якщо необхідно інтерполювати значення функції f в точці P = (x, y). І задано значення функції в навколишніх до P точках Q11 = (x1y1), Q12 = (x1y2), Q21 = (x2y1), та Q22 = (x2y2).

Спершу лінійно інтерполюємо в напрямку осі x:


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

Коли відомі вершини є вершинами одиничного квадрата: (0, 0), (0, 1), (1, 0) та (1, 1), формула білінійної інтерполяції спрощується до

можна записати у вигляді наступної білінійної форми:

Інтерполяція є добутком двох лінійних функцій. І вона також може бути записана як:

де

.

Результат білінійної інтерполяції не залежить від порядку виконання кроків інтерполяції.

Очевидним узагальненням білінійної інтерполяції на функцію трьох змінних є — трилінійна інтерполяція.

Білінійна інтерполяція в комп'ютерній графіці

Приклад збільшення частини зображення — простим масштабуванням і зі застосуванням білінійної інтерполяції

У комп'ютерній графіці білінійна інтерполяція набула широкого поширення у процесі ресемплінга (або, простіше кажучи, масштабування) зображень.

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

Недолік методу

Головним мінусом білінійної інтерполяції при масштабуванні зображень є той факт, що при збільшенні в разів зображення розміром на пікселів в результаті буде отримано зображення розміром не на пікселів, а на пікселів.

Пов'язано це з тим, що у вихідному зображенні, наприклад, по горизонталі мається точок, тобто суміжних пар. При збільшенні зображення в раз між кожною парою основних точок вставляється по додаткових точок (тобто при збільшенні вдвічі між основними точками вставляється ще по одній, при збільшенні втричі - по дві і т. д.). Усього в результаті ширина результуючого зображення дорівнюватиме сумі кількості основних і додаткових точок:

.

Простіше кажучи , для останнього пікселя ( в кожному рядку і стовпці ) вихідного зображення не знаходиться пари , з якою можна було б провести інтерполювання .


Для обходу цього обмеження , по-перше , звичайно приймається , що у вихідному і отриманому зображеннях колірні значення пікселів семпліровані з їхніх центрів , а не з кутів , тобто наприклад , якщо взяти абсолютну довжину і ширину зображення рівними 1 , в зображенні розміром 2 на 2 координатами вихідних точок є ( 0.25 ; 0.25 ) , ( 0.25 ; 0.75 ) , ( 0.75 ; 0.25 ) , і ( 0.75 ; 0.75 ), а не ( 0 ; 0 ) , ( 0 ; 0.5) , ( 0.5 ; 0 ) , і ( 0.5 ; 0.5) ( поправка на дискретизацію ) . Таким чином забезпечується правильна центровка зображення при масштабуванні , але проблемними виявляються не тільки останній рядок і останній стовпець , а всі прикордонні пікселі одержуваного зображення однаково , бо їх координати випадають за межі прямокутника , що окреслює точки семплування вихідного зображення (наприклад, при масштабуванні в 4 на 4 потрібно обчислити значення в точках ( 0.125 ; 0.125 ) , ( 0.125 ; 0.875 ) і т.д.). Потім, так як значення в цих точках не можуть бути інтерпольованні, то потрібно розширити вихідне зображення одним із способів (вибір якого залежить від способу подальшого використання зображення )

  • Екстраполяція значень крайових пікселів;
  • Дзеркальне відображення вихідного зображення щодо кожного краю, і центральне по кутах. Як значення відсутніх пікселів використовуються копії значень пікселів з того ж краю; таким чином, пікселі, що випадають за вихідні координати, є інтерполянтами лише в одному вимірі, а в іншому копіями крайових значень;
  • Теселяція вихідного зображення; копії вихідного зображення "приклеюються" впритул з кожного краю і з кутів. Як кольори відсутніх пікселів, таким чином, використовуються значення пікселів з протилежного краю. Метод підходить, якщо інтерпольоване зображення саме використовуватиметься для теселяції (наприклад, для заповнення багатокутників при текстуруванні).

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

Приклад програми

Нижче наведено приклад програми білінійної інтерполяції зображення, написаний на С++

void resample( const unsigned* inBuf  // вхідний масив пікселів
             , unsigned* outBuf       // результат - вихідний масив пікселів
             , int oldWidth           //ширина оригіналього зображення
             , int oldHeight          //висота оригіналього зображення
             , int newWidth           //ширина результуючого зображення
             , int newHeight          //висота результуючого зображення
             )
{
    const float div_height = (float) ( (oldHeight - 1) ) / (newHeight - 1);
    const float div_width = (float) ( (oldWidth - 1) ) / (newWidth - 1);
    float i_tmp = 0.f;
    for ( int i = 0; i < newHeight; ++i, i_tmp += div_height )
    {
        float j_tmp = 0.f;
        int l = (int)(i_tmp);
        if (l > oldHeight - 2)
        {
            l = oldHeight - 2;
        }
        const float u = i_tmp - l;
        l *= oldWidth;
        for ( int j = 0; j < newWidth; ++j, j_tmp += div_width )
        {

            int c = (int) (j_tmp);
            if (c > oldWidth - 2)
            {
                c = oldWidth - 2;
            }
            const float t = j_tmp - c;

            //Коефіцієнти
            const float d1 = (1 - t) * (1 - u);
            const float d2 = t * (1 - u);
            const float d3 = t * u;
            const float d4 = (1 - t) * u;

            const int ind = l + c; // для оптимізації (щоб не рахувати далі 4 рази)
        // значення кольору в 4 пікселях, за якими інтерполюємо
            const unsigned p1 = inBuf[ ind ];
            const unsigned p2 = inBuf[ ind + 1 ];
            const unsigned p3 = inBuf[ ind + oldWidth + 1 ];
            const unsigned p4 = inBuf[ ind + oldWidth];

            // Записуємо результуючий піксель
            *outBuf++ = p1 * d1 + p2 * d2 + p3 * d3 + p4 * d4;
        }
    }
}

Див. також

Read other articles:

Часть серии статей о Холокосте Идеология и политика Расовая гигиена · Расовый антисемитизм · Нацистская расовая политика · Нюрнбергские расовые законы Шоа Лагеря смерти Белжец · Дахау · Майданек · Малый Тростенец · Маутхаузен ·&...

 

 

Почтовый дом Почтовый дом (на переднем плане) Юрисдикция Украина Расположение Украина, Киев, Почтовая площадь, дом 2 Статус Памятник архитектуры национального значения, охранный №27 Построен в период 1853—1865 гг. Архитектурный стиль Классицизм Количество этажей 1 эт. Почто�...

 

 

Untuk website, lihat situs web.Artikel ini bukan mengenai laman. Tangkapan layar laman web di Wikipedia. Laman web atau halaman web (bahasa Inggris: web page) atau adalah halaman utama dari suatu situs web yang diakses oleh pengguna pada awal masuk ke situs tersebut. Sebagai contoh, jika seseorang mengetik alamat internet http://id.wikipedia.org, mereka akan diarahkan langsung ke halaman utama dari alamat tersebut.[1] Vermaat di sisi lain mendefinisikan laman web sebagai setiap dokume...

For an in-depth analysis of the physiographical and geological features of the mainland, see Korea. Topographic mapsNorth KoreaSouth Korea Daedongyeojido, a map of Korea Korea comprises the Korean Peninsula (the mainland) and 3,960 nearby islands. The peninsula is located in Northeast Asia, between China and Japan. To the northwest, the Amnok River (Yalu River) separates Korea from China and to the northeast, the Duman River (Tumen River) separates Korea from China and Russia. The Yellow Sea...

 

 

Indian marine geologist Hassan Nasiem SiddiqueBorn(1934-07-20)20 July 1934Bijnor, Uttar Pradesh, IndiaDied14 November 1986(1986-11-14) (aged 52)Goa, IndiaNationalityIndianAlma materOsmania UniversityAligarh Muslim UniversityShirshov Institute of OceanologyKnown forGeological studies on Bay of Bengal and the Arabian Sea and Antrartica MissionAwards1978 Shanti Swarup Bhatnagar Prize1983 Padma Shri1986 Goa State AwardNational Mineral AwardScientific careerFieldsMari...

 

 

1250–800 BCE culture in the Valley of Mexico Two Tlatilco figurines, from the Manantial phase, 1000 - 800 BCE. Tlatilco culture is a culture that flourished in the Valley of Mexico between the years 1250 BCE and 800 BCE,[1] during the Mesoamerican Early Formative period. Tlatilco, Tlapacoya, and Coapexco are the major Tlatilco culture sites. Tlatilco culture shows a marked increase in specialization over earlier cultures, including more complex settlement patterns, specialized occup...

Islam Itu IndahGenreIslamiPembuatTim Programming Trans TVPresenter Muhammad Nur Maulana Fadli Muhammad Oki Setiana Dewi Negara asal IndonesiaBahasa asliIndonesiaJmlh. musim13Jmlh. episode4.522 (masih tayang 27 Agustus 2023)ProduksiDurasi90 menit (05:00-06:30 WIB)Rumah produksiTim Programming Trans TVRilis asliJaringanTrans TVRilisMinggu, 30 Januari 2011 –Sekarang Islam Itu Indah adalah acara kajian Islami yang ditayangkan perdana pada 30 Januari 2011 & tayang setiap hari puku...

 

 

NV ArenaExterior of the stadium in 2017LocationSankt Pölten, Lower AustriaCoordinates48°13′15″N 15°39′11″E / 48.2209°N 15.6531°E / 48.2209; 15.6531OwnerSKN St. PöltenCapacity8,000[1] (football)ConstructionBroke groundJanuary 2011Built2011–2012Opened7 July 2012Architectagn Niederberghaus & PartnerTenantsSKN St. Pölten The NV Arena is a football stadium located in Sankt Pölten, Lower Austria, Austria. It is the home stadium of SKN St. Pölte...

 

 

Questa voce o sezione sull'argomento Aviazione è priva o carente di note e riferimenti bibliografici puntuali. Sebbene vi siano una bibliografia e/o dei collegamenti esterni, manca la contestualizzazione delle fonti con note a piè di pagina o altri riferimenti precisi che indichino puntualmente la provenienza delle informazioni. Puoi migliorare questa voce citando le fonti più precisamente. Segui i suggerimenti del progetto di riferimento. Nellis Air Force Baseaeroporto Codice IATALS...

American army officer and statesman (1880–1959) George Marshall and General Marshall redirect here. For other uses, see George Marshall (disambiguation) and General Marshall (disambiguation). George C. MarshallOfficial portrait, 19463rd United States Secretary of DefenseIn office21 September 1950 – 12 September 1951PresidentHarry S. TrumanDeputyStephen EarlyRobert A. LovettPreceded byLouis A. JohnsonSucceeded byRobert A. Lovett10th President of the American Red CrossIn office1 Oc...

 

 

Quality of being agreeable to reason Not to be confused with Rationalism. Rational redirects here. For the mathematical property of some numbers, see Rational number. For other uses, see Rational (disambiguation). Not to be confused with Rationale. Part of a series onEpistemology Outline Category Index Schools Coherentism Contextualism Dogmatism Empiricism Fallibilism Foundationalism Infallibilism Infinitism Naturalism Perspectivism Pragmatism Rationalism Relativism Skepticism Solipsism Struc...

 

 

National park in Ukraine Dnieper-Oril Nature ReserveIUCN category Ia (strict nature reserve)Floodplain of Lake Hrobovo, in Dnieper-Oril Nature ReserveLocationUkraineNearest cityDniproCoordinates48°30′43″N 34°47′4″E / 48.51194°N 34.78444°E / 48.51194; 34.78444Area3,766 hectares (9,310 acres)Governing bodyState Forestry Committee of Ukraine Dnieper-Oril Nature Reserve (Ukrainian: Дніпровсько-Орільский природний запо�...

Not to be confused with Dubai Marina Mall. Very large shopping mall in Dubai, UAE 25°11′51″N 55°16′45″E / 25.19750°N 55.27917°E / 25.19750; 55.27917 Dubai Mallدبي مولThe exterior of the Dubai Mall (2023)LocationDowntown Dubai,United Arab EmiratesAddressDubai downtownOpening date4 November 2008; 15 years ago (2008-11-04)DeveloperEmaar PropertiesManagementEmaar Malls GroupArchitectDP ArchitectsNo. of stores and services1,200+No. of anc...

 

 

Bishop of Bangor; Bishop of Salisbury; Bishop of London The Right Reverend and Right HonourableThomas SherlockBishop of LondonPortrait by Jean-Baptiste van LooChurchChurch of EnglandDioceseLondonElected1748Term ended1761 (death)PredecessorEdmund GibsonSuccessorThomas HayterOther post(s)Bishop of Salisbury1734–1748Bishop of Bangor1728–1734OrdersConsecrationc. 1728Personal detailsBorn1678LondonDied(1761-07-18)18 July 1761BuriedAll Saints Church, Fulham, MiddlesexNationalityBritish...

 

 

Дом ГайдараДом Пестовых фасад, апрель 2013 года 56°50′43″ с. ш. 60°35′30″ в. д.HGЯO Тип Особняк Страна  Россия Город Екатеринбург Тип здания усадьба Архитектурный стиль эклектика Автор проекта В. В. Коновалов Дата основания 1890 Строительство 1880-е — 1890-е Известн...

Soviet American historian (1922–1997) In this name that follows Eastern Slavic naming customs, the patronymic is Petrovich and the family name is Kazhdan. Alexander KazhdanKazhdan in 1992BornАлекса́ндр Петро́вич Кажда́н(1922-09-03)3 September 1922Moscow, Soviet RussiaDied29 May 1997(1997-05-29) (aged 74)Washington D.C., U.S.Known forOxford Dictionary of ByzantiumChildrenDavid KazhdanAcademic backgroundEducationPedagogical Institute of UfaMoscow State ...

 

 

Valéry Giscard d'Estaing Jean-Bedel Bokassa L’affaire des diamants, ou affaire des diamants de Bokassa, est une affaire politique impliquant l'ancien président de la République française Valéry Giscard d'Estaing et l'ancien président puis empereur de Centrafrique Jean-Bedel Bokassa. L’affaire, emblématique du journalisme d'investigation et de la protection des sources d'information, débute en octobre 1979 à la suite de révélations du Canard enchaîné selon lesquelles le prés...

 

 

5th-century Gallic poet, diplomat, bishop, and Catholic saint SaintSidonius ApollinarisBornc. 430Lugdunum, Gaul, Western Roman EmpireDiedc. 485Clermont-Ferrand, Kingdom of the VisigothsVenerated inEastern Orthodox ChurchRoman Catholic ChurchFeast21 AugustMajor worksCarmina; Epistles Gaius Sollius Modestus Apollinaris Sidonius, better known as Sidonius Apollinaris (5 November,[1] c. 430 – 481/490 AD), was a poet, diplomat, and bishop. Born into the Gallo-Roman aristocracy, he wa...

Voce principale: 1. Fußball-Club Nürnberg Verein für Leibesübungen. 1. Fußball-Club Nürnberg Verein für LeibesübungenStagione 1976-1977Sport calcio Squadra Norimberga Allenatore Horst Buhtz 2. Bundesliga5º posto Coppa di GermaniaQuarti di finale Maggiori presenzeCampionato: Pechtold (38)Totale: Pechtold (43) Miglior marcatoreCampionato: Walitza (21)Totale: Walitza (26) StadioStädtisches Stadion Maggior numero di spettatori36 000 vs. Stoccarda Minor numero di spettatori1&#...

 

 

Laws of the medieval Kingdom of Valencia You can help expand this article with text translated from the corresponding article in Spanish. (October 2017) Click [show] for important translation instructions. View a machine-translated version of the Spanish article. Machine translation, like DeepL or Google Translate, is a useful starting point for translations, but translators must revise errors as necessary and confirm that the translation is accurate, rather than simply copy-pasting mach...