Analiza kart dla streamerów. Szybka i dokładna.
cardstream to maszyna stanów zbudowana wokół endpointu identyfikacji kart. Wszystko poniżej albo poprawia identyfikację, albo pilnuje, żeby dochodziło do niej tylko wtedy, gdy naprawdę warto za nią zapłacić.
Identyfikacja kart w czasie rzeczywistym z dowolnego streamu
Cztery endpointy identyfikacji za jednym przełącznikiem: kolekcjonerskie gry karciane, karty sportowe, ocenione karty w slabach i komiksy.
Całe dopasowanie w jednym obiekcie
Nazwa, pełna nazwa, set, kod setu, numer karty, seria, rok i podkategoria przychodzą jako jeden płaski obiekt na każdą zidentyfikowaną kartę: gotowy do odczytania na głos, zapisania albo przekazania do własnych narzędzi.
Pewność, na której można polegać
Każde dopasowanie niesie surową odległość i poziom High / Medium / Low (granice przy 0.30 i 0.40). Ustaw próg wyniku, a karty poniżej niego nigdy nie trafią na nakładkę.
Alternatywne dopasowania
Do każdego wyniku dołączone są maksymalnie cztery inne karty, które też wchodziły w grę. Jeśli pierwsze dopasowanie jest błędne, właściwe zwykle jest na tej krótkiej liście.
Wartości z góry, które zawężają wyszukiwanie
Podaj grę, kod setu albo system pisma, a endpoint przestanie je zgadywać. Wartości są sprawdzane lokalnie, więc literówka kończy się błędem na Twoim komputerze, a nie po cichu zwróconą złą wersją karty.
Kategoria dla każdej transmisji
Jedna flaga albo okno ustawień w trakcie streamu: tcg, sport, slab lub comics. Przełączenie odrzuca wartości podane z góry, których nowa kategoria nie zna, zamiast wysyłać jej coś, czego nie potrafi użyć.
Przód, tył i obrót
Znane atrybuty wychodzą razem z wycinkiem, więc endpoint pomija klasyfikatory, których nie potrzebuje: mniej okazji do pomyłki, szybsze odpowiedzi.
Szybka analiza streamów na żywo z AI
Jedna maszyna stanów, wspólna dla obu wariantów wdrożenia. Wszystko tutaj działa na Twoim procesorze, zanim cokolwiek opuści komputer.
Bramka ruchu
Średnia różnica między klatkami mówi, czy obraz się uspokoił. Żaden dalszy krok się nie uruchamia, dopóki karta wciąż przesuwa się przez kadr.
Bramka tożsamości
Każdą kartę w kadrze model AI porównuje z poprzednią za pomocą embeddingu. Odpowiada na jedno pytanie: ta sama karta czy nowa?
Trzy poziomy częstotliwości detekcji
Detekcja działa często, gdy coś się rusza, rzadko przy nieruchomej karcie i prawie wcale nad pustą matą. Poziomy ustawia się w konfiguracji każdej ze stron wdrożenia, a nie w kodzie.
Przerwa ochronna, brak ponowień, zapominanie
Dla karty, której nie udało się dopasować, zapytanie nie jest ponawiane w kółko. Karta trzymana w kadrze nie jest identyfikowana ponownie. Karta, której nie było wystarczająco długo, po powrocie jest analizowana od nowa.
Strażnik zapytań i watchdog
W danej chwili trwa tylko jedna identyfikacja, z minimalnym odstępem i limitem czasu, który odblokowuje przetwarzanie, gdy endpoint się zawiesi. Wolne zapytanie nigdy nie zatrzymuje streamu.
Błyskawiczne wyniki
Modele AI, z których korzysta cardstream, działają na Twoim własnym komputerze. System jest bardzo szybki i nie wymaga żadnego GPU.
Obsługiwane źródła i rodzaje wideo
Źródła są wymienne, a analiza wygląda tak samo bez względu na to, które wybierzesz.
Kamery i pliki
Indeks kamery internetowej, plik wideo, pojedynczy obraz albo kamera w przeglądarce, gdy uruchamiasz interfejs webowy. Dobre do sprawdzenia setupu przed transmisją.
Pobieranie: RTSP, RTMP, SRT
Skieruj go na kamerę IP, enkoder albo restreamer, a będzie pobierać stream i łączyć się ponownie w rosnących, ale ograniczonych odstępach, gdy sygnał zniknie.
Wysyłanie: prosto z OBS
Uruchom go w trybie nasłuchu i niech OBS wysyła do niego RTMP lub SRT: jedno dodatkowe wyjście obok tego, które zasila Twoją platformę sprzedażową.
Klatki JPEG przez WebSocket
Dla setupów własnej roboty: każdy proces, który potrafi wysyłać klatki JPEG przez gniazdo, jest poprawnym źródłem.
Trzy ustawienia rozdzielczości
To, co rejestruje kamera, to, co jest wysyłane, i to, co jest analizowane, to osobne liczby. Analiza działa na małym obrazie i jest tania, a wycinek wysyłany do identyfikacji jest wycinany na nowo z pełnej klatki.
Klatki zostają u Ciebie
W trybie klienckim komputer opuszcza wyłącznie jeden wycinek JPEG na każdą nową kartę: nie stream, nie sąsiednie klatki. Zapisywanie transmisji na koncie Ximilar to flaga, którą włączasz świadomie.
Nasze wagi albo Twoje
Analizuj streamy na żywo naszym modelem przygotowanym pod CPU. Potrzebujesz większej dokładności albo ekstremalnej szybkości? Wytrenuj własny i uruchom go na GPU!
Segmentacja RF-DETR
Domyślny lokalizator: dostrojony model segmentacji instancji wyeksportowany do .onnx, uruchamiany przez onnxruntime, bez biblioteki torch. Maska daje cztery rogi karty, więc wycinek, za którego wysłanie płacisz, jest wyprostowany i przycięty równo z krawędzią karty.
Detekcja RF-DETR / RT-DETRv2
Prostokąty ograniczające jako opcjonalna alternatywa: ONNX dla szybkości albo katalog transformers lub identyfikator z huba, dopóki jeszcze pracujesz nad dostrajaniem.
Wagi w zestawie
Lokalizator RF-DETR i model embeddingów są wytrenowane przez Ximilar i publikowane na licencji Apache-2.0. Instalator je pobiera, więc między Tobą a działającym systemem nie ma żadnego etapu trenowania.
Backendy modelu embeddingów
Modele embeddingów w Torch, ONNX albo LiteRT/TFLite dla bramki tożsamości: użyj tego środowiska uruchomieniowego, które już masz na komputerze.
Ciężkie importy są leniwe
Torch nie jest zależnością rdzenia. Zainstaluj tylko te dodatki (extras), których potrzebują Twoje backendy, a cała reszta i tak działa.
Dowolna usługa identyfikacji
Zapytanie o identyfikację to jeden wymienny krok. Skieruj je do Ximilar, do komercyjnego systemu rozpoznawania albo do modelu, który hostujesz samodzielnie.
Jeden proces, obok kamery
Detekcja i bramki działają na Twoim komputerze, z jednego instalowalnego pakietu, a to jedno zapytanie o identyfikację idzie z niego prosto do API.
Dwa punkty wejścia, jeden potok przetwarzania
Polecenie bez interfejsu dla setupów i skryptów oraz lokalny interfejs w przeglądarce, gdy chcesz popatrzeć, jak to działa. Oba przyjmują te same flagi i budują ten sam potok.
Jeden klucz, trzymany lokalnie
Twój klucz Ximilar, odczytywany ze środowiska na Twoim komputerze. Żadnego konta do założenia tutaj, żadnej warstwy pośredniej, której trzeba zaufać, i nic do utrzymywania przy życiu poza samym procesem.
Nic nie blokuje pętli
Dekodowanie JPEG, detekcja, HTTP i zapisy na dysk działają poza pętlą zdarzeń. Wolna klatka jest pomijana, a nie odkładana do kolejki z narastającym opóźnieniem.
Okno ustawień na żywo
Progi, kategorię, grę, kod setu i system pisma można zmieniać z przeglądarki w trakcie streamu, a każda kontrolka powstaje z jednej listy deskryptorów, więc interfejs i walidacja nie mogą się rozjechać.
Nakładka stworzona dla streamów
Znacznik stanu, prostokąt wokół karty i historia wszystkich pokazanych kart (miniatura każdej i czas, jaki spędziła w kadrze), którą jedna flaga zapisuje na Twoim koncie Ximilar. Do tego panel debugowania, gdy chcesz zobaczyć, jak bramki podejmują decyzje.
Zestaw testów offline
Cały zestaw działa bez sieci i bez plików modeli: sesje ONNX i detektory zastępują atrapy. Sforkuj repozytorium, a i tak sprawdzisz, czy coś się zepsuło.
Open source. Na własnym sprzęcie. Twój stream, Twoje zasady.
Żadnej platformy pośrodku, żadnych licencji na stanowisko: podłącz API Ximilar albo własny system identyfikacji, a cardstream zapyta raz na każdą nową kartę zamiast raz na klatkę. Robisz breaki na Whatnot, prowadzisz transmisję w stylu Fanatics Live albo streamujesz z własnego setupu do live commerce? Uruchom cardstream jeszcze dziś wieczorem, na sprzęcie, który już masz.