$$\rightleftharpoonup{xx}$$
$$\longleftharp{xx}$$,
$$\longrightharp{xx}$$,
Używane oprogramowanie jest wymienione w Tabeli Materiałów.
Konfiguracja zestawu danych
Zbiór danych UCF-1013 został pozyskany i przeniesiony do katalogu Videos/UCF-101 . Integralność zbioru danych oceniano poprzez weryfikację sumy kontrolnej lub odtwarzanie ręczne, a wszelkie uszkodzone pliki były wyłączane z dalszego przetwarzania.
Środowisko obliczeniowe
Wszystkie eksperymenty przeprowadzono w Pythonie 3.10 na Windows 10/11 lub Ubuntu 20.04+. Środowisko oprogramowania obejmowało tensorflow==2.17.0, opencv-python, scikit-image, numpy, pandas oraz tqdm. Wykorzystano minimum 8 GB RAM, a gdy było to możliwe, stosowano akcelerację GPU.
Ekstrakcja ramek
Klatki wideo były odczytywane za pomocą cv2. WideoCapture(), oraz konwersja na skale szarości zostały wykonane za pomocą cv2.cvtColor. Powstałe ramki były przechowywane w kolejności sekwencyjnej w katalogu Ramki , aby zachować spójność czasową.
Sieć cech podstawowych
Do przetwarzania 224 × 224 ramek szarości zastosowano sekwencyjną sieć neuronową splotową. Zastosowano warstwy splotowe, poolingowe i gęste, a model był trenowany przez pięć epok z optymalizatorem Adama oraz stratą entropii binarnej w celu ustalenia reprezentacji cech bazowych.
Przydział i kompresja przepływności
Szacowano złożoność klatek na poziomie pikseli, która została wykorzystana do określenia proporcjonalnej alokacji przepływności. Zastosowano kompresję JPEG z adaptacyjnymi wartościami Q, a przetworzone klatki zapisywano w katalogu Processed do dalszej analizy.
Ocena jakości
Dla każdej przetworzonej ramki wykonywano obliczenia SSIM, PSNR i MSE. Uzyskane metryki były kompilowane do plików CSV, a wykresy wizualizacyjne generowane i przechowywane w katalogu Output .
Ostateczna egzekucja
Cały workflow został wykonany za pomocą framework.run(). To wykonanie generowało końcowy zestaw przetworzonych klatek, podsumowań metrycznych i wykresów ewaluacji.
1. Optymalizacja strumieniowania wideo w adaptacyjnej jakości
1.1 Przegląd architektury systemu
Przedstawiono tutaj metodę optymalizacji strumieniowania wideo specyficznie dla sieci 5G i wyższych poprzez ramy AQVSO. Podejście to łączyło kilka nowoczesnych elementów, które wzajemnie się uzupełniały, aby poprawić jakość pracy i zmaksymalizować wykorzystanie zasobów sieciowych. Do przetwarzania strumieni wideo wykorzystywano złożony potok, przy czym każdy komponent specjalizował się w określonym obszarze optymalizacji wideo. Przez cały proces streamingu system zapewniał maksymalną jakość utrzymania i zrównoważone przetwarzanie.
1.2 Wstępne przetwarzanie wideo i analiza początkowa
1.2.1 Ekstrakcja ramek i baza jakości
Dane ramy optymalizacyjne zostały zbudowane na etapie wstępnego przetwarzania wideo, który wykorzystywał zaawansowane techniki analizy do ustalania standardów jakości i przygotowania treści wideo do dalszego przetwarzania. Po wejściu do systemu strumień wideo był poddany dokładnej procedurze ekstrakcji klatek, która dzieliła wideo na pojedyncze klatki i badała korelacje czasowe między kolejnymi klatkami. To wstępne przetwarzanie rejestrowało dynamikę czasową wideo i ustawiało odpowiednie parametry przetwarzania dla całego strumienia. Dla wejścia wideo V klatki były wyodrębniane i przetwarzane według następującej matematycznej formuły:
(1)
Rozdzielczość klatek obliczano jako m, a całkowitą liczbę klatek jako n. Klatki były wyodrębniane, zachowując jednocześnie spójność czasową wideo, umożliwiając równoległe przetwarzanie na późniejszych etapach. Poziom jakości został ustanowiony poprzez wdrożenie nowego podejścia fuzji. Połączono wiele wskaźników jakości, aby stworzyć kompleksową ocenę jakości. Ogólny początkowy QoE został określony na podstawie określonych parametrów.
(2)
Rozważano znaczenie tego podejścia fuzji, ponieważ odnosiło się ono do ograniczeń indywidualnych wskaźników jakości. Wskaźnik podobieństwa strukturalnego (SSIM) obejmował aspekty jakości percepcyjnej, które tradycyjne metryki mogły pominąć, podczas gdy stosunek szczytowego sygnału do szumu (PSNR) zapewniał obiektywny pomiar jakości, a średni błąd kwadratowy (MSE) zapewniał bezpośrednie porównanie na poziomie pikseli. Współczynniki wagowe α1 α2 α 3 nie były statyczne; zamiast tego dostosowywali się dynamicznie na podstawie cech treści. I-ty współczynnik wagi obliczono na pomocy:
(3)
Gdzie,
qi to i-ty układ, i = 1,2...n
Qj to j-ta rama, j = 1,2...n, i nie jest równe j
Ważne czynniki μi zostały określone poprzez szeroko zakrojoną analizę empiryczną różnych typów treści wideo, aby zapewnić, że dynamiczna korekta wagi utrzymuje istotną ocenę jakości dla różnych typów treści wideo i warunków oglądania. Uwzględniono takie czynniki jak złożoność ruchu, gęstość tekstury oraz znaczenie percepcyjne różnych regionów.
1.2.2 Analiza złożoności treści
Złożoność treści została przeanalizowana jako kluczowy element ram za pomocą podejścia wielowymiarowego, które ilościowo określało różne aspekty treści wideo. Analiza ta była kluczowa dla podejmowania świadomych decyzji dotyczących alokacji zasobów i parametrów kompresji na późniejszych etapach. Wprowadzono kompleksową metrykę złożoności, która uwzględniała przestrzenne, czasowe i percepcyjne aspekty treści wideo, wyrażoną przez:
(4)
Składowa złożoności przestrzennej Cs(f) została obliczona poprzez analizę szczegółów i rozkładu tekstur w każdej klatce za pomocą analizy gradientów. Ten pomiar służył do identyfikacji obszarów wymagających wyższego przydziału bitów w celu utrzymania jakości.
(5)
Składowa złożoności czasowej Ct(f) została obliczona w celu ilościowego określenia intensywności ruchu między kolejnymi ramkami, ponieważ pomiar ten był niezbędny do przewidywania zachowania kompresji i określenia odpowiednich rozmiarów buforów.
(6)
Komponent złożoności percepcyjnej Cp(f) integrował modele widzenia człowieka, aby priorytetyzować regiony istotne dla widzów.
(7)
1.3 Ekstrakcja cech z wykorzystaniem rzadkich sieci splotowych z uwagą grafów
Nowatorska architektura Sparse Graph Attention Convolutional Network (SGA-ConvNet) została zaimplementowana na etapie ekstrakcji cech w AQVSO, co stanowiło znaczną poprawę w porównaniu z konwencjonalnymi sieciami konwolucyjnymi do przetwarzania wideo. SGA-ConvNet został zaprojektowany tak, aby być szczególnie dobrze przystosowany do obsługi danych wideo o wysokich wymiarach w warunkach ograniczonych zasobów, łącząc skuteczność rzadkich konwolucji z adaptacją mechanizmów uwagi. Ta architektura sieciowa rozwiązała podstawowy problem przechwytywania zależności czasowych i przestrzennych w treściach wideo. Podczas przetwarzania klatek wideo tworzono dynamiczny graf, w którym każdy węzeł reprezentował ważny punkt cechy, a krawędzie wskazywały, jak te cechy się ze sobą odnoszą. Narzut obliczeniowy został znacząco zmniejszony dzięki koncentracji zasobów na odpowiednich regionach, przy jednoczesnym zachowaniu rzadkiej łączności, w przeciwieństwie do konwencjonalnych sieci splotowych. Operacja podstawowa na każdej warstwie była definiowana poprzez:
(8)
H(l) reprezentował reprezentacje cech na warstwie l, gdzie A ̃ oznaczało znormalizowaną macierz sąsiedztwa uwagi. W(l) zawierało macierze wag do uczenia, a σ reprezentowało nieliniową funkcję aktywacji. Sieć umożliwiła naukę hierarchicznych reprezentacji cech przy zachowaniu rzadkości w grafie obliczeniowym. Mechanizm uwagi, który był kluczowy dla adaptacyjnego przetwarzania cech, był obliczany poprzez:
(9)
αij oznaczał współczynnik uwagi między węzłami i i j, a [hi ∣∣ hj] oznaczał konkatenację ich wektorów cech. Aktywacja LeakyReLU została wykorzystana, aby zapobiec zanikającym gradientom, jednocześnie zachowując zdolność sieci do uczenia się na podstawie negatywnych cech. Mechanizm uwagi dynamicznie dostosowywał znaczenie różnych powiązań cech w zależności od ich istotności dla bieżącej zawartości.
1.4 Dynamiczna kontrola szybkości za pomocą adaptacyjnych sieci neuronowych z wybuchem
Dynamiczna kontrola szybkości została zaimplementowana w ramach AQVSO (Rysunek 1) za pomocą architektury ASNN, biologicznie inspirowanego podejścia do zarządzania prędkościami strumieniowania wideo. ASNN został zaprojektowany specjalnie do obsługi dynamiki czasowej strumienia wideo, jednocześnie dostosowując się do szybko zmieniających się warunków sieciowych. Ten komponent uznano za kluczowy dla zachowania jakości streamingu przy jednoczesnym optymalizacji wykorzystania przepustowości w różnych warunkach sieciowych. Informacje były przetwarzane poprzez dyskretne impulsy w ASNN, naśladując biologiczne sieci neuronowe, co zapewniało kilka korzyści w zakresie efektywności energetycznej i przetwarzania czasowego. Potencjał błonowy neuronów spiking mógł ewoluować zgodnie z:
(10)
V(t) reprezentowało potencjał błony w czasie t, Vspoczynek jako potencjał spoczynkowy, a τm jako stałą czasową błony. I(t) było obliczane na podstawie warunków sieciowych i złożoności zawartości. Szum adaptacyjny został wprowadzony przez σ(t)N(0,1) w celu poprawy odporności. Ten wyraz szumowy pomagał sieci utrzymać stabilność w obliczu gwałtownych wahań warunków sieci. Mechanizm kontroli prędkości został zaimplementowany przy użyciu zaawansowanego schematu adaptacji:
(11)
R(t) oznaczało docelową szybkość przenoszenia, S(t) oznaczało szybkość skoków sieci neuronowej, B(t) oznaczało dostępną przepustowość, a E(t) oznaczało wyraz błędu wyprowadzany z metryk jakości. Wykładniczy wyraz expp(-λE(t)) został użyty, aby zapewnić płynną adaptację do zmian jakości, jednocześnie zapobiegając oscylacjom w systemie kontroli prędkości.
1.5 Optymalizacja kompresji oparta na jakości
Na etapie optymalizacji kompresji wdrożono nowatorskie podejście, łączące percepcyjne metryki jakości ze strategiami kompresji uwzględniającą świadomość treści. Ten etap stał się podstawowym dla osiągnięcia optymalnych kompromisów między jakością a rozmiarem w skompresowanym strumieniu wideo. Zastosowano adaptacyjny schemat kompresji regionowej, który przydzielał bity zarówno w zależności od ważności treści, jak i wymagań jakościowych percepcji.
(12)
C (r,t) reprezentowało stopień sprężania dla regionu r w czasie t, a baza C(r) była używana jako stopień sprężania bazowego determinowany przez złożoność zawartości. Q(r,t) zostało zdefiniowane jako czynnik jakości. φi (r,t) zostało zaimplementowane, aby reprezentować różne czynniki dostosowujące, w tym intensywność ruchu, gęstość krawędzi oraz znaczenie percepcyjne.
1.6 Alokacja zasobów poprzez głębokie sieci wierzeń z optymalizacją kolonii mrówek
Mechanizm alokacji zasobów w AQVSO został skonfigurowany tak, aby wdrożyć hybrydowe podejście łączące Deep Belief Networks (DBN) z optymalizacją kolonii mrówek (Ant Colony Optimization, ACO), ustanawiając nowatorskie rozwiązanie złożonego problemu optymalnego rozkładu zasobów w systemach streamingu wideo. Zdolności uczenia się sieci głębokich przekonań zostały wykorzystane do rozpoznawania wzorców w wykorzystaniu zasobów, natomiast mocne strony optymalizacji algorytmów kolonii mrówek były wykorzystywane do podejmowania decyzji o alokacji zasobów w czasie rzeczywistym. System DBN-ACO został zaprojektowany, aby sprostać fundamentalnemu wyzwaniu równoważenia natychmiastowych potrzeb zasobów z długoterminowymi celami optymalizacji w dynamicznych środowiskach sieciowych. Komponent DBN został zaimplementowany przy użyciu hierarchicznej struktury uczenia składającej się z wielu ograniczonych maszyn Boltzmanna (RBM), przy czym każda warstwa rejestrowała coraz bardziej abstrakcyjne wzorce wykorzystania zasobów. Rozkład prawdopodobieństwa aktywacji ukrytej jednostki modelowano poprzez:
(13)
hi oznaczał ukryte jednostki, v oznaczał jednostki widzialne, bi oznaczał składniki bias, a Wij oznaczał wagi połączeń. To probabilistyczne modelowanie zostało wykorzystane do uchwycenia złożonych zależności w wzorcach wykorzystania zasobów, przy jednoczesnym zachowaniu zdolności adaptacji do zmieniających się warunków. Komponent ACO został zaimplementowany z dynamiczną strategią optymalizacji opartą na feromonach.
(14)
(15)
τij oznaczało poziomy feromonów, przy czym p stanowiło tempo parowania Δτij (t). została zdefiniowana jako aktualizacja feromonów, a η IJ reprezentowała wartość heurystyczną opartą na aktualnych warunkach sieci i dostępności zasobów.
1.7 Adaptacyjne zarządzanie buforem i odzyskiwanie błędów
W ramach AQVSO zaimplementowano zaawansowany system zarządzania buforami, który dynamicznie dostosowywał się do zmieniających się warunków sieciowych i charakterystyk zawartości. System ten został zaprojektowany tak, aby utrzymać ciągłość strumieniowania przy jednoczesnym minimalizowaniu opóźnień i zapobieganiu przelewowi lub przelewowi bufora. Zastosowano nowatorskie podejście adaptacyjne, które uwzględniało zarówno statystyki sieciowe, jak i złożoność treści.
(16)
B(t) utrzymywano jako docelowy rozmiar bufora, QoE(t) mierzono jako bieżącą jakość doświadczenia, σ(t) jako metrykę stabilności sieci, a φ(σ(t)) jako funkcję adaptacyjną modulującą rozmiar bufora w zależności od zmienności sieci. Mechanizm odzyskiwania błędów został wykonany w wielowarstwowym podejściu, łączącym proaktywne zapobieganie błędom ze strategiami reaktywnego odzyskiwania. W systemie przechowywano przesuwane okno z odniesieniami ram.
(17)
p było używane do reprezentowania prawdopodobieństwa sukcesu pojedynczej próby odzyskania, n jako liczba prób, a T(t) jako czas od wykrycia błędu. Ten wykładniczy wyraz zaniku był używany do zapewnienia, że wysiłki odzyskiwacze są właściwie priorytetyzowane na podstawie istotności czasowej.
1.8 Ocena jakości i integracja informacji zwrotnej
System oceny jakości wdrożył kompleksowe podejście, łączące wiele wskaźników jakości z czynnikami doświadczenia użytkownika. Ta integracja była kluczowa dla utrzymania wysokiego QoE przy jednoczesnym optymalizacji wykorzystania zasobów. System zaimplementował nowatorską jakościową fuzję metryk:
(18)
NB(t) obliczono jako znormalizowany współczynnik buforowania, SB(t) jako częstotliwość przełączania, a M(t) jako współczynnik jakości ruchu. Wagi wi były dostosowywane dynamicznie w zależności od typu treści i warunków oglądania.
(19)
Θi było reprezentowane jako wagi bazowe, a f(C(t)) jako funkcja korekty zależnej od treści. System integracji sprzężenia zwrotnego został zaimplementowany jako mechanizm sterowania w zamkniętej pętli.
(20)
e(t) został ustawiony tak, aby reprezentował błąd między docelową a osiągniętą jakością, a K1,K,2,K 3 jako adaptacyjne parametry wzmocnienia, które dostosowywały się do warunków sieciowych i charakterystyki zawartości.