Color to RGB

Jeśli masz coś do powiedzenia w sprawie LabVIEW napisz. Tutaj są tematy, których nie można uściślić do innych działów.
dnorus
Posty: 19
Rejestracja: 07 gru 2008 19:43
Kontakt:

Color to RGB

Post autor: dnorus »

Cześć,
Chce odczytać obraz w LabView, wszystko ładnie idzie tylko, że obraz RGB jest wczytany jako macierz 2D - przyzwyczajony jestem do 3D i kolejnej intepretacji każdego koloru w kolejnej przestrzeni. Tutaj jest to liczba 24 bitowa, która jest potem zamieniana na integer, nijak nie umiem tego użyć w sensie dalszego przetwarzania (chyba że na podstawie tych liczb mogę w jakiś sposób porównywać kolory itp), bowiem potrzebuje np policzyć dla danego piksela jakąś norme, odległość - do tego potrzebuje każdej składowej RGB z osobna.
Znalazłem bloczek Color to RGB, z tym że nie moge użyć na nim całej macierzy jaką jest obraz a tylko konkretny kolor - rozwiązanie jakie widze to w pętli.. jest jakiś łatwiejszy sposób na to?! tak samo jak chciałem wygenerować macierz n x n z losowymi wartościami, też muszę użyć pętelki?!
Awatar użytkownika
Pitol
Moderator
Posty: 984
Rejestracja: 19 lip 2007 00:00
Wersja środowiska: LabVIEW 2019
Lokalizacja: Kraków

Color to RGB

Post autor: Pitol »

Po odczycie obrazu dostajesz tablice RGB(w sensie tablice 24-bitowych liczb z czego na każdą "literkę" jest 8 bitów w liczbie), wyciągasz z niej odpowiednio dane(to nie będzie trudne) i masz to co lubisz (czyli każdą barwę oddzielnie)
dnorus
Posty: 19
Rejestracja: 07 gru 2008 19:43
Kontakt:

Color to RGB

Post autor: dnorus »

No ale chodzilo mi właśnie o odpowiednie wyciągnięcie danych:) mam sobie zamienić tą liczbę na bitową, podzielić, wyjąć, wyłączyć .. ale jak:) znalazłem właśnie ten bloczek Color to RGB no ale on działa na jednej wartości, a nie na całej macierzy.
Awatar użytkownika
jogurt_owocowy
Posty: 1317
Rejestracja: 30 lis 2004 00:00
Wersja środowiska: LabVIEW 2015
Lokalizacja: Kraków

Re: Color to RGB

Post autor: jogurt_owocowy »

Color to RGB (...) rozwiązanie jakie widze to w pętli.. jest jakiś łatwiejszy sposób na to?
To jest na pewno najłatwiejszy sposób, choć zapewne nie najszybszy. Dwie zagnieżdżone pętle for z autoindeksowaniem na wejściu i wyjściach i nie martwisz się niczym więcej.
dnorus
Posty: 19
Rejestracja: 07 gru 2008 19:43
Kontakt:

Color to RGB

Post autor: dnorus »

Dobra, dzięki wielkie - nauczym się przy tym czegoś o indeksowaniu i robieniu subVi's ;] szkoda tylko że trochę to trwa te przejście na RGB.
Pozdrawiam!
Awatar użytkownika
Mikrobi
Posty: 1210
Rejestracja: 08 paź 2003 00:00
Wersja środowiska: LabVIEW 2017

Color to RGB

Post autor: Mikrobi »

Tytułem uzupełnienia - kolor w LabVIEW to U32:
najstarszy bajt jest nieznaczący a nastepne to R, G, B
pozdrawiam
Mikrobi

LabVIEW Champion, CLD, CPI
vugie
Posty: 383
Rejestracja: 17 lis 2006 00:00
Wersja środowiska: LabVIEW 2009
Lokalizacja: Warszawa

Color to RGB

Post autor: vugie »

Ten najstarszy bajt nie jest taki do końca nieznaczący - zmienia się jeżeli wybierze się w color pickerze któryś z kolorów systemowych. A wtedy pozostałe bajty nie kodują już koloru bezpośrednio. Ale Color to RGB choć wolny działa zawsze. Natomiast jeżeli się jest pewnym, że U32 pochodzi z obrazka 24-bitowego to lepiej bezpośrednio dobierać się do 3 młodszych bajtów.
sebastiankozub
Posty: 5
Rejestracja: 25 mar 2009 14:35
Lokalizacja: Leszno
Kontakt:

Re: Color to RGB

Post autor: sebastiankozub »

ja mam pytanie troche z innej beczki...
chcialbym wczytac plik BITMAP i dokonac jego kompresji za pomoca jednego ze standartowych algorytmow... czy ma ktos jakis pomysl jak to zrobic?
Awatar użytkownika
coolfon
Posty: 232
Rejestracja: 01 gru 2007 08:59
Wersja środowiska: LabVIEW 2009
Kontakt:

Re: Color to RGB

Post autor: coolfon »

sebastiankozub pisze:ja mam pytanie troche z innej beczki...
chcialbym wczytac plik BITMAP i dokonac jego kompresji za pomoca jednego ze standartowych algorytmow... czy ma ktos jakis pomysl jak to zrobic?
Najprościej to chyba trzeba... wczytać plik bmp i zaimplementować w LabVIEW algorytm kompresji ;)

A tak serio... Chcesz dokonać w LV ręcznej kompresji (np. JPEG, czyli w dużym skrócie dekompozycja na bloki, DCT, kodowanie Huffmana itd.)? Bo to raczej czasochłonne przedsięwzięcie, zwłaszcza w LabVIEW. Jaki cel Ci przyświeca? :)
sebastiankozub
Posty: 5
Rejestracja: 25 mar 2009 14:35
Lokalizacja: Leszno
Kontakt:

Color to RGB

Post autor: sebastiankozub »

nie nie nie :P
chodzi o zoobrazowanie jednego z algorytmow kompresji - np: kodowanie huffmana - a na koncu podac stopien kompresji - ewentualnie pokazac jeszcze ze kompresja jest bezstartna - brak zmian w pliku

a moj problem dotyczny glownie problemow takich:
-jak wczytac plik? ... wiem juz ze sa bloczki "vi file open", "vi file read" ale chcailbym jeszcze zeby wyskakiwalo okienko wczytywania plikow jak w windowsie
- potem... jak i w czym umiescic dane binarne zeby najlatwiej na nich operowac podczas kompresji?
- nastepnie bedzie sam algorytm kompresji ... bede myslal o tym jak juz bedzie dzialac to wczesniej ;)
Ostatnio zmieniony 26 mar 2009 07:10 przez sebastiankozub, łącznie zmieniany 1 raz.
ODPOWIEDZ