Wyświetlanie prostokątów QML w видеопотоке na podstawie rozpoznawania obiektów

0

Pytanie

Mam strumień wideo, jak opisano w Przeglądzie filmów Qt, z wykorzystaniem MyVideoProducer mechanika. Oryginalne obrazy są analizowane i mam listę podłączonych komponentów (x,y,szerokość, wysokość), i chcę nałożyć prostokąty na wideo.

Czy mogę to zrobić, wysyłając listy współrzędnych prostokątów w QML i zamieszczając w nim prostokąty, czy muszę utworzyć własny obraz nakładki?

Spojrzałem na układ cząstek QtQuick, ale wygląda na to, że nie pasuje. Inne pytania dotyczą lokalizacji prostokąta opartego na Qt/Qml, ale muszę prostokąt został umieszczony zgodnie ze współrzędnymi, które przenośnik vision określił w C++ i wysłał na interfejs QML. Będą one nieaktualne/związanymi z видеокадрами.

Jest przykład, ale nadruk nie ma nic wspólnego z wideo. Myślę, że muszę nakładka, która synchronizuje się z onNewVideoContentReceived(). QML nie będzie w stanie łatwo określić, jak synchronizować dowolną listę prostokątów z wideo.

computer-vision qml qt qt5
2021-11-22 18:51:32
1

Najlepsza odpowiedź

1

Właśnie zmienił oryginalny tworzenie bufora, nagrane z kamery, aby samemu narysować prostokąty w formacie RGBA. Pozwala to uniknąć problemu synchronizacji wideo z danymi o położeniu obiektu. Nie używałem alfa, a po prostu zastąpił piksele. Dla mojego treści ilość kartonów w porównaniu z obszarem wideo była niewielka. Z alfa-prostokąty i dużą ilością obiektów może być bardziej skuteczne wykorzystać procesor graficzny. W rzeczywistości, można użyć kwadraty o stałym rozmiarze, a nie ograniczoną obszar CCL, i to mogło by być znacznie szybciej z procesorem graficznym.

Rozwiązanie QML byłoby bardziej elegancko, ale to rozwiązanie działa.


Zamienniki sąQVideoFrame::setMetaDatato może przywiązać lista QRect CCL do klatki, aby komunikacja była ostra i przywiązanego do klatki. Sposób onNewVideoContentReceived() z MyVideoProducer można było rysować prostokąty z C++.

Inna opcja-QAbstractVideoFilter, który zmieni oryginalny gumowy, aby dodać dodatkowe dane do prezentowanych zdjęć. To łatwo włączyć/wyłączyć za pomocą interfejsu QML.

Wszystkie decyzje są oparte na C++, więc w QML łatwo zmienić kolor itp. na Przykład, jeśli obiekt ma zagwarantowane właściwości, takie jak "mężczyzna", "kobieta", "kot", "pojazd", itp., QML może odpowiednio zaktualizować zaznaczanie i prowadzenia ewidencji typów obiektów.

2021-11-26 16:16:56

W innych językach

Ta strona jest w innych językach

Русский
..................................................................................................................
Italiano
..................................................................................................................
Română
..................................................................................................................
한국어
..................................................................................................................
हिन्दी
..................................................................................................................
Français
..................................................................................................................
Türk
..................................................................................................................
Česk
..................................................................................................................
Português
..................................................................................................................
ไทย
..................................................................................................................
中文
..................................................................................................................
Español
..................................................................................................................
Slovenský
..................................................................................................................