przerobienie Array of cluster do Array of points
przerobienie Array of cluster do Array of points
Witam,
Mam następujący problem:
Z bloczka IMAQ GetPointsOnContour VI otrzymuję dane typu array of cluster z informacjami o wyszukanych krawędziach obiektów, danych tych jest sporo ale mnie interesują tylko współrzędne x , y opisujące krawędzie obiektów.
Poniżej pętle które zrobiłem do wyłuskania danych które potrzebuję, ale to jeszcze nie to. Poniżej zdjecie z typami danych jakie otrzymuję z IMAQ GetPointsOnContour VI oraz jakie są mi potrzebne. Zmierzając do sedna:
Niezbędny jest mi typ danych typu array of points zawierający wszystkie współrzędne punktów z wszystkich wyszukanych obiektów ale tak aby były ustawione jedne za drugimi w jednej strukturze array.
Prosiłbym kolegów o wsparcie, nie powinien być to trudny temat ale coś mnie zaćmiło i nie mogę danych x,y ustawić w niezbędnej kolejności.
Mam następujący problem:
Z bloczka IMAQ GetPointsOnContour VI otrzymuję dane typu array of cluster z informacjami o wyszukanych krawędziach obiektów, danych tych jest sporo ale mnie interesują tylko współrzędne x , y opisujące krawędzie obiektów.
Poniżej pętle które zrobiłem do wyłuskania danych które potrzebuję, ale to jeszcze nie to. Poniżej zdjecie z typami danych jakie otrzymuję z IMAQ GetPointsOnContour VI oraz jakie są mi potrzebne. Zmierzając do sedna:
Niezbędny jest mi typ danych typu array of points zawierający wszystkie współrzędne punktów z wszystkich wyszukanych obiektów ale tak aby były ustawione jedne za drugimi w jednej strukturze array.
Prosiłbym kolegów o wsparcie, nie powinien być to trudny temat ale coś mnie zaćmiło i nie mogę danych x,y ustawić w niezbędnej kolejności.
- Pitol
- Moderator
- Posty: 987
- Rejestracja: 19 lip 2007 00:00
- Wersja środowiska: LabVIEW 2019
- Lokalizacja: Kraków
przerobienie Array of cluster do Array of points
Coś nie do końca Cie zrozumiałem.
Chcesz tablicę 1D:
x,y,x,y,x,y,x,y,x,y,...
Czy tablicę 2D:
x,y
x,y
x,y
x,y
???
Chcesz tablicę 1D:
x,y,x,y,x,y,x,y,x,y,...
Czy tablicę 2D:
x,y
x,y
x,y
x,y
???
Re: przerobienie Array of cluster do Array of points
potrzebuje tablice 2d zawierającą punkty z wszystkich znalezionych obiektów.
przerobienie Array of cluster do Array of points
Wyrzuć wewnętrznego FOR'a, po Unbundle by name użyj index array i wyciągnij indeks 0 (tablica Contour Points jest prawdopodobnie jednoelementowa), użyj ponownie Unbundle by name (wybierz x i y) i podepnij je do build array. Wyciągnij to z FOR'a i masz tablicę 2D. Możesz ewentualnie transponować tablicę używając transpose 2D array.
Jeżeli to jest niezrozumiałe to jutro bede mial dostep do IMAQ'a to Ci to wysle screen'a.
Pozdrawiam
Jeżeli to jest niezrozumiałe to jutro bede mial dostep do IMAQ'a to Ci to wysle screen'a.
Pozdrawiam
Re: przerobienie Array of cluster do Array of points
Dziękuje SNT za poradę, zgodnie z info zbudowałem następujący schemat:SNT pisze:Wyrzuć wewnętrznego FOR'a, po Unbundle by name użyj index array i wyciągnij indeks 0 (tablica Contour Points jest prawdopodobnie jednoelementowa), użyj ponownie Unbundle by name (wybierz x i y) i podepnij je do build array. Wyciągnij to z FOR'a i masz tablicę 2D. Możesz ewentualnie transponować tablicę używając transpose 2D array.
Jeżeli to jest niezrozumiałe to jutro bede mial dostep do IMAQ'a to Ci to wysle screen'a.
Pozdrawiam
z którego otrzymałem nastepujace typ danych:
Nie jest to do końca to co potrzebuję, niezbędny jest mi format Array of points taki jak w pierwszym moim poscie, do wyświetlenia tych punktów na obrazie z wykorzystaniem bloku IMAQ Overlay Points VI.
Po wprowadzeniu bloku Bundle Function format danych jest juz odpowiedni do wyswietlenia ich za pomocą IMAQ Overlay Points VI: Tylko jeszcze inny problem się pojawił, w tej tablicy nie ma wszystkich punktów.
Pętla wykonuje się tyle razu ile zostało wykrytych obiektów, a każdy obiekt ma jeszcze n-ilość punktów. otrzymuje wiec tylko pierwszą część punktów z pierwszego obiektu, cała reszta jest pomijana.
Jakiś pomysł jak je wpisać?
Re: przerobienie Array of cluster do Array of points
Po wyjściu z for'a, gdy masz tablicę 2D dodaj to:
- Załączniki
-
- array of points.png (25.81 KiB) Przejrzano 10535 razy
Re: przerobienie Array of cluster do Array of points
Ok dzięki, a co to jest za bloczek który wchodzi do bundle u góry ?SNT pisze:Po wyjściu z for'a, gdy masz tablicę 2D dodaj to:
przerobienie Array of cluster do Array of points
Klaster z dwoma liczbami typu DBL.
-
- Posty: 289
- Rejestracja: 01 maja 2012 14:14
- Wersja środowiska: LabVIEW 2012
- Lokalizacja: Farum
przerobienie Array of cluster do Array of points
Masz LV11.
1. Zapisz jego obrazek na dysk
2. Drag and dropnij go na Control panela.
3. Gotowe
1. Zapisz jego obrazek na dysk
2. Drag and dropnij go na Control panela.
3. Gotowe