Pytanie w sprawie matlab, image-processing, opencv – Jak radzić sobie z wartościami współrzędnych zmiennoprzecinkowych w obrazie

4

Planuję pewną geometrię na obrazie. Problem polega na tym, że współrzędne wychodzą jako pływaki, więc nie jestem w stanie ich wykreślić. Jako obejście używam floor (); aby skrócić go do najbliższej liczby całkowitej. W niektórych przypadkach działa to dobrze, z wyjątkiem tego, że trochę przesuwa mój obraz.

  x=9.7 

  x'=floor(x)= 9  //the plot is now at 9 and not at 9.7 as desired, (this is 'shift')   

Ale w przypadkach, gdy moim wymaganiem jest narysowanie wielu kształtów narówna odległość Mam problem z przesunięciem (ze względu na floor ();) nie jest jednolity dla każdego kształtu.
Podobnie jak szum kwantyzacji w komunikacji cyfrowej.

Czy jest jakiś sposób, aby obejść ten problem?

To nie jestpodobnie jak szum kwantyzacji w komunikacji cyfrowej to jestszum kwantyzacji w komunikacji cyfrowej. Każde podejście do zaokrąglania liczby f-p do liczby całkowitej spowoduje ten problem, chociaż sprytny (?) Wybór metody zaokrąglania może zminimalizować jego wpływ na sytuację. High Performance Mark
użyj wygładzania krawędzi Spektre

Twoja odpowiedź

1   odpowiedź
3

ej.Rasteryzacja jest domeną problemową, z którą obecnie się zmagasz. Możesz znaleźćAlgorytm linii Bresenhama dobre wprowadzenie do tematu.Tutaj to ładna strona interaktywna z kilkoma różnymi algorytmami rasteryzacji.

Mam nadzieję, że to pomoże!

+1 Przypomina mi o dyskusji:GL_LINEAR vs GL_NEAREST, jeśli jesteś w OpenGL.Ta strona jest również świetny i wspomina, że ​​GL_NEAREST używaOdległość na Manhattanie. karlphillip

Powiązane pytania