-
Data: 2018-12-12 20:50:03
Temat: Re: Interpolacja 2D
Od: Wojciech Muła <w...@g...com> szukaj wiadomości tego autora
[ pokaż wszystkie nagłówki ]On Wednesday, December 12, 2018 at 9:00:02 AM UTC+1, Maciej Sobczak wrote:
> Jest funkcja dwóch zmiennych, powiedzmy taka (w C/C++):
>
> double f(double x, double y);
>
> Powiedzmy, że mam jakiś zbiór sampli, czyli wartości tej funkcji dla kilku
wybranych x,y.
> Chciałbym zrobić interpolację tej funkcji, czyli taką fukcję g(x,y), która *z
grubsza* wygładzi znane sample z f(x,y).
>
> Sample mogę mieć posortowane, np. leksykograficznie po x i y. W szczególności mogą
być w takiej mapie:
>
> std::map<std::pair<double, double>, double>
> ^ ^ ^
> x y wartość
>
> albo w czymś innym.
>
> Pierwsze przybliżenie jest takie, żeby znaleźć 3 sample, które są najbliżej
szukanego punktu, zrobić na nich (i na wartościach funkcji w tych samplach)
płaszczyznę i poszukać gdzie na tej płaszczyźnie (w sensie wartości z) wypada szukany
punkt x,y.
> Wadą tego pierwszego przybliżenia jest ilość obliczeń przy każdym szukaniu.
Chciałbym jak najmniej.
>
> Potencjalnym rozwiązaniem (zakładając, że wszystkie wartości są fizyczne i mają
jakiś akceptowany błąd pomiaru) jest ograniczenie dziedziny z góry i wyliczenie
jakiegoś akceptowalnego rastra (powiedzmy NxM) off-line, interpolowanego choćby jak
wyżej na podstawie sampli i użycie tego wyliczonego rastra jako gotowego słownika w
run-time. Jestem gotów zapłacić większym zużyciem pamięci za mniejszy czas obliczeń.
> Ktoś ma inny pomysł?
>
> --
> Maciej Sobczak * http://www.inspirel.com
Jak możesz sobie policzyć f dla danej siatki, to bym poszedł
w powierzchnie NURBS. Tam możesz sobie dobrać stopień wielomianów, liczbę przedziałów
itp. tak żeby mieć wybór
między dokładnością, a złożonością obliczeniową.
w.
Następne wpisy z tego wątku
- 14.12.18 08:59 Maciej Sobczak
Najnowsze wątki z tej grupy
- Do czego nadaje się QDockWidget z bibl. Qt?
- Bibl. Qt jest sztucznie ograniczona - jest nieprzydatna do celów komercyjnych
- Co sciaga kretynow
- AEiC 2024 - Ada-Europe conference - Deadlines Approaching
- Jakie są dobre zasady programowania programów opartych na wtyczkach?
- sprawdzanie słów kluczowych dot. zła
- Re: W czym sie teraz pisze programy??
- Re: (PDF) Surgical Pathology of Non-neoplastic Gastrointestinal Diseases by Lizhi Zhang
- CfC 28th Ada-Europe Int. Conf. Reliable Software Technologies
- Młodzi programiści i tajna policja
- Ada 2022 Language Reference Manual to be Published by Springer
- Press Release - AEiC 2023, Ada-Europe Reliable Softw. Technol.
- Ada-Europe - AEiC 2023 early registration deadline approaching
- Ada-Europe Int.Conf. Reliable Software Technologies, AEiC 2023
- Ile cykli zajmuje mnożenie liczb 64-bitowych?
Najnowsze wątki
- 2024-05-18 Warszawa => Software .Net Developer <=
- 2024-05-18 Warszawa => Mid/Senior QA Engineer <=
- 2024-05-18 Ulm => Solution Architect (sichere Kommunikation und IoT-Loesungen <=
- 2024-05-18 Katowice => Head of Virtualization Platform Management and Operating S
- 2024-05-18 Warszawa => SAP WM Consultant / Execution <=
- 2024-05-18 Wrocław => Consultant/Implementer Comarch ERP XL <=
- 2024-05-18 Gdańsk => Head of International Freight Forwarding Department <=
- 2024-05-18 Warszawa => Account Manager (Recruitment Services) <=
- 2024-05-18 Łódź => Salesperson - CRM Systems <=
- 2024-05-18 Łódź => Handlowiec - Systemy CRM <=
- 2024-05-17 ZŁOMNIK o pracy w TVN TURBO, nowych przepisach i współczesnej motoryzacji. Turbo Taryfa!
- 2024-05-17 Białystok => DevOps Engineer Conexa First (Contractor) <=
- 2024-05-17 Warszawa => Starszy inżynier oprogramowania (Rust) <=
- 2024-05-17 Zabrze => Junior HelpDesk <=
- 2024-05-17 Bieruń => Administrator i wdrożeniowiec Lotus Notes/Domino <=