CZ307563B6 - A method of dynamic distribution of computing processes to one or more graphics processing units (GPU) - Google Patents

A method of dynamic distribution of computing processes to one or more graphics processing units (GPU) Download PDF

Info

Publication number
CZ307563B6
CZ307563B6 CZ2017-492A CZ2017492A CZ307563B6 CZ 307563 B6 CZ307563 B6 CZ 307563B6 CZ 2017492 A CZ2017492 A CZ 2017492A CZ 307563 B6 CZ307563 B6 CZ 307563B6
Authority
CZ
Czechia
Prior art keywords
neural network
graphics processors
processes
dynamically allocating
neural networks
Prior art date
Application number
CZ2017-492A
Other languages
Czech (cs)
Other versions
CZ2017492A3 (en
Inventor
Martin Brázdil
Jaromír Tejkl
Vladimír Mařík
Original Assignee
Certicon A.S.
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Certicon A.S. filed Critical Certicon A.S.
Priority to CZ2017-492A priority Critical patent/CZ307563B6/en
Publication of CZ2017492A3 publication Critical patent/CZ2017492A3/en
Publication of CZ307563B6 publication Critical patent/CZ307563B6/en

Links

Abstract

GPU manager is a scheduler based on a discrete multi-criteria optimization algorithm that ensures optimal neural network (03) layout on individual graphics processors (09). It schedules on which graphics processors (09) neural networks (03) will run and if multiple copies will run in order to maximize the number of processed images per unit of time. For this purpose, it uses the principles of asynchronous and parallel data processing. It further provides communication between proxy detectors (02) with image streams and instances of neural networks (03), i.e. start, termination, configuration changes and pairing.

Description

Způsob dynamického rozdělování výpočetních procesů jednomu či více grafickým procesorůmA method of dynamically allocating computational processes to one or more graphics processors

Oblast technikyField of technology

Popsaný vynález se týká počítačové analýzy video záznamu z bezpečnostních kamer v reálném čase, založené na dynamickém rozdělování jednotlivých výpočetních procesů jedné či více grafickým kartám. Vynález umožňuje sémantickou analýzu (detekci objektů) jednoho či více proudů obrázků v reálném čase na jednom či více počítačích použitím jedné či více konvolučních neuronových sítí implementovaných ve frameworku Caffe, běžících na jednom či více grafických procesorech.The present invention relates to a real-time computer analysis of video from security cameras, based on the dynamic distribution of individual computational processes to one or more graphics cards. The invention enables semantic analysis (object detection) of one or more real-time image streams on one or more computers using one or more convolutional neural networks implemented in a Caffe framework running on one or more graphics processors.

Dosavadní stav technikyPrior art

V současné době je pořizováno velké množství video záznamů z bezpečnostních a jiných kamer. Data z nich jsou ve většině případů používána off-line pro případné dohledání dějů, které byly v minulosti zaznamenány. Pro on-line zpracovávání jsou využívána dohledová centra, kde je k analýze video sekvencí využívána lidská síla.Currently, a large number of video recordings are made from security and other cameras. The data from them are in most cases used off-line for possible tracing of events that have been recorded in the past. Surveillance centers are used for online processing, where human power is used to analyze video sequences.

Problémem sémantické analýzy (detekce objektů) a zpracováním proudu obrázků se zabývá velké množství patentů. Například:A large number of patents deal with the problem of semantic analysis (object detection) and image stream processing. For example:

•TW201605239 (A) - Video analysis method and video analysis apparatus (TOP GUIDE INTERNÁT CORP) • KR20150086723 (A) - IMAGE RECODING SYSTEM (SAMSUNG TECHWIN CO LTD) • EP1955205 (Bl) - METHOD AND SYSTEM FOR PRODUCING A VIDEO SYNOPSIS (BRIEFCAM LTD) • CN104391867 (A) - Mass video searching systém based on video synopsis (FUJIAN YIRONG INFORMATION TECHNOLOGY CO LTD) • US2017133053 (Al) - SYSTEMS AND METHODS FOR VIDEO SYNOPSES (FLIR SYSTEMS • US2013308921 (Al) - CREATING VIDEO SYNOPSIS FOR USE IN PLAYBACK (YAHOO INC) • KR101459103 (Bl) - METHOD FOR VIDEO MONITORING USING VIDEO SURVEILLANCE SYSTÉM (DYNAMAX CO LTD)• TW201605239 (A) - Video analysis method and video analysis apparatus (TOP GUIDE INTERNATE CORP) • KR20150086723 (A) - IMAGE RECODING SYSTEM (SAMSUNG TECHWIN CO LTD) • EP1955205 (Bl) - METHOD AND SYSTEM FOR PRODUCING A VIDEO SYNOPSIS (BRIEFCAM LTD) • CN104391867 (A) - Mass video searching system based on video synopsis (FUJIAN YIRONG INFORMATION TECHNOLOGY CO LTD) • US2017133053 (Al) - SYSTEMS AND METHODS FOR VIDEO SYNOPSES (FLIR SYSTEMS • US2013308921 (Al) - CREATING VIDEO SYNOPSIS FOR USE IN PLAYBACK (YAHOO INC) • KR101459103 (Bl) - METHOD FOR VIDEO MONITORING USING VIDEO SURVEILLANCE SYSTEM (DYNAMAX CO LTD)

V případě, že jsou výše uvedené metody využívány k on-line analýze obrazového záznamu, je ve většině případů potřeba pro každou bezpečnostní kameru jedno jádro procesoru, resp. grafického koprocesoru, což komplikuje širší rozšíření on-line analýzy z většího množství kamer.If the above methods are used for online analysis of video recordings, in most cases one processor core is required for each security camera, resp. graphics coprocessor, which complicates the wider expansion of online analysis from a larger number of cameras.

Základní problém je, jakým způsobem dynamicky rozvrhnout neuronové sítě na grafické procesory za účelem maximalizace množství zpracovaných obrázků. Zpracováním obrázku se myslí dopředný průchod (inference) neuronovou sítí, kdy na vstupuje daný obrázek a na výstupu jsou detekované objekty (tj. vyznačená lokace objektu, příslušnost do jedné z určených kategorií).The basic problem is how to dynamically distribute neural networks to graphics processors in order to maximize the number of processed images. Image processing means the forward passage (inference) of the neural network, when the given image is input and objects are detected at the output (ie marked location of the object, belonging to one of the specified categories).

Podstata vynálezuThe essence of the invention

Podstata vynálezu spočívá na myšlence, že je možno na základě znalosti vytížení jednotlivých grafických procesorů na základě požadavku na neuronovou síť automatizovaně rozhodnout zda dojde ke spuštění nové sítě nebo k párování s již existující neuronovou sítí.The essence of the invention lies in the idea that it is possible to automatically decide whether to start a new network or to pair with an existing neural network on the basis of knowledge of the utilization of individual graphics processors based on the neural network request.

- 1 CZ 307563 B6- 1 CZ 307563 B6

Technické řešení je postaveno na diskrétním multikriteriálním optimalizačním algoritmu, který je implementován dynamickým programováním a vždy nalezne optimální řešení, to znamená, schéma s maximálně vyváženým počtem instancí neuronových sítí na grafických procesorech, kterého lze dosáhnout minimálním počtem změn ve stávajícím rozvržení.The technical solution is based on a discrete multicriteria optimization algorithm, which is implemented by dynamic programming and always finds the optimal solution, ie a scheme with the maximum balanced number of neural network instances on graphics processors, which can be achieved by a minimum number of changes in the existing layout.

Vstupem do algoritmu rozvrhovače je počet grafických procesorů, počet neuronových sítí a jejich paměťových nároků. Algoritmus neustále prochází strom všech kombinací rozložení neuronových sítí na jednotlivých grafických procesorech. Prohledávaný strom je prořezán o kombinace, které nevyhovují paměťovým nárokům. Prvním minimalizačním kritériem je součet absolutních hodnot rozdílů ve vážených počtech instancí neuronových sítí podle jejich konfigurace. Druhým minimalizačním kritériem použitým při shodě s prvním kritériem je počet změn nutných k dosažení stavu daného prvním kritériem. Nej lepší dosud nalezená konfigurace je udržována v paměti rozvrhovače. Nejlepší nalezené hodnoty v každém podstromu jsou memoizovány. Algoritmus je invariantní k permutacím rozložení pro jednotlivé grafické procesory (nezáleží na pořadí grafických procesorů).The input to the scheduler algorithm is the number of graphics processors, the number of neural networks and their memory requirements. The algorithm constantly goes through a tree of all combinations of neural network layouts on individual graphics processors. The searched tree is pruned by combinations that do not meet the memory requirements. The first minimization criterion is the sum of the absolute values of the differences in the weighted numbers of neural network instances according to their configuration. The second minimization criterion used to comply with the first criterion is the number of changes required to achieve the status given by the first criterion. The best configuration found so far is kept in the scheduler's memory. The best values found in each subtree are memoized. The algorithm is invariant to layout permutations for individual graphics processors (it does not matter the order of graphics processors).

Objasnění výkresůExplanation of drawings

Technické řešení a jeho funkce jsou blíže popsány na připojených výkresech:The technical solution and its functions are described in more detail in the attached drawings:

- Obr. 1 znázorňuje základní popis požadavků na přiřazení neuronové sítě- Giant. 1 shows a basic description of neural network assignment requirements

- Obr. 2 znázorňuje roli GPU manažera při rozdělování výpočetních úkolů jednotlivým grafickým procesorům- Giant. 2 illustrates the role of the GPU manager in allocating computational tasks to individual graphics processors

- Obr. 3 znázorňuje rozhodovací strom GPU manažera- Giant. 3 shows the decision tree of the GPU manager

Příklady uskutečněni vynálezuExamples of embodiments of the invention

Základní stavební jednotkou celého procesu sémantické analýzy (detekce objektů) je interakce dvou procesů, jimiž jsou detektor proxy 02 a neuronová síť 03. Detektor proxy 02 na vstupu přijímá obrázek, který pošle síťovou či mezi procesovou komunikací 04 neuronové síti 03, která ho zpracuje použitím interference specifikované v zaslané konfigurací a opět síťovou či mezi procesovou komunikací 04 pošle detekované objekty zpět.The basic building block of the whole semantic analysis process (object detection) is the interaction of two processes, which are the proxy detector 02 and the neural network 03. At the input, the proxy detector 02 receives an image which sends to the neural network 03 via network or between process communication 04 and processes it using the interference specified in the sent configuration and again sends the detected objects back by network or between process communication 04.

Pár detektor proxy-neuronová síť vzniká žádostí o vytvoření neuronové sítě od detektor proxy 02 zaslanou procesu GPU manažer 01. Žádost 05 obsahuje konfigurační soubor popisující požadovanou neuronovou síť, přičemž GPU manažer rozhodne, zda dojde ke spuštění nové sítě nebo k párování s již existující neuronovou sítí 03.The proxy-neural network detector pair is created by a neural network creation request from the proxy detector 02 sent to the GPU manager 01 process. The request 05 contains a configuration file describing the required neural network, the GPU manager deciding whether to start a new network or pair with an existing neural network. network 03.

Kardinalita propojení je N:l, čili detektor proxy 02 může být spárován pouze s jednou neuronovou sítí 03, avšak jedna neuronová síť 03 může být spárována s více detektory proxy 02. GPU manažer 01 udržuje záznamy o párování 10, jimiž jsou komunikační rozhraní obou procesů, identifikátor procesu a konfigurace neuronové sítě a grafické karty 09, na které neuronová síť provádí inferenci.The connection cardinality is N: 1, i.e. the proxy detector 02 can be paired with only one neural network 03, but one neural network 03 can be paired with multiple proxy detectors 02. The GPU manager 01 maintains pairing records 10, which are the communication interfaces of both processes , the process identifier and configuration of the neural network and the graphics card 09 on which the neural network performs inference.

Na vstupu každé neuronové sítě je dávkovač JJ_. Pokud je k neuronové síti připojen víc než jeden detektor proxy, potom jsou všechny požadavky na zpracování obrázků asynchronně ukládány do vyrovnávací paměti 12. Vždy, když neuronová síť zpracuje všechny aktuální dávky obrázků, tak si z vyrovnávací paměti vybere další nashromážděné požadavky, rozdělí je na dávky (až do) předem dané velikosti a začne je zpracovávat.At the input of each neural network is a dispenser 11. If more than one proxy detector is connected to the neural network, then all image processing requests are stored asynchronously in buffer 12. Each time the neural network processes all current batches of images, it selects additional collected requests from the buffer, divides them into batches (up to) a predetermined size and begin processing them.

-2CZ 307563 B6-2EN 307563 B6

Zrušení párování iniciuje detektor proxy 02 požadavkem zaslaným GPU manažeru 01. GPU manažer 01 zruší záznam o páru a v případě, že zanikne poslední pár s danou neuronovou sítí, takUnpairing is initiated by the proxy detector 02 by a request sent to the GPU manager 01. The GPU manager 01 cancels the pair record and in case the last pair with the given neural network disappears, then

GPU manažer 01 zavře příslušnou neuronovou síť 03.The GPU manager 01 closes the respective neural network 03.

Rozvrhování jednotlivých neuronových sítí 03 na grafické procesory provádí GPU manažer 01. Úkolem GPU manažera 01 je, aby všechny běžící neuronové sítě 03 konzumovaly obdobné vážené množství výpočetních zdrojů poskytovaných grafickými procesory 09. Další podmínkou pro práci GPU manažera 01 je minimalizace celkového počtu provedených změn (vytváření a ukončování neuronových sítí).The scheduling of individual neural networks 03 into GPUs is performed by GPU manager 01. The task of GPU manager 01 is to ensure that all running neural networks 03 consume a similar weighted amount of computing resources provided by GPUs 09. Another condition for GPU manager 01 is to minimize the total number of changes ( creation and termination of neural networks).

Detektor proxy 02 může být v rámci jednoho procesu agregován do ensemblů 06. V ensemblů 06 koexistují detektory 02 s různými i stejnými konfiguracemi (duplikované detektory 07). Požadavek na zpracování obrázku je zaslán všem různě konfigurovaným detektorům 02 najednou a detekce jsou sjednoceny. Naopak z duplikovaných detektorů 07 je pro každý obrázek zaslán požadavek pouze jednomu.The proxy detector 02 can be aggregated into assemblies 06 in one process. Detectors 02 with different and identical configurations coexist in the assemblies 06 (duplicate detectors 07). The image processing request is sent to all differently configured detectors 02 at once and the detections are unified. Conversely, of the duplicate detectors 07, only one request is sent for each image.

Duplikovaný detektor 07 je pro každý obrázek vybrán iterativně cyklicky s volitelným odstupem mezi duplikovaným detektorem, kterému se pošle požadavek na zpracování a duplikovaným detektorem 07, kterému se pošle požadavek na výsledek. Mějme d počet detektorů, s velikost odstupu, i pořadové číslo obrázku, potom požadavek na zpracování obrázku obdrží detektor i (mod d) a požadavek na výsledek detektor i-n (mod d).The duplicate detector 07 is selected for each image iteratively cyclically with a selectable distance between the duplicate detector to which the processing request is sent and the duplicate detector 07 to which the result request is sent. Suppose d the number of detectors, s the size of the distance, i the serial number of the image, then the request for image processing is received by detector i (mod d) and the request for the result by detector i-n (mod d).

Jak se detektor 02 zachová k požadavku na zpracování či výsledek se odvíjí od parametru frameskip. Parametr frameskip udává maximální možný počet požadavků na výsledek, které je možno ignorovat, pokud výsledek ještě není k dispozici. Pokud čítač ignorovaných požadavků na výsledek dosáhne hodnoty frameskip, vynutí se čekání na výsledek. Požadavek na zpracování je ignorován, pokud není zpracovaný předchozí požadavek. Výsledky z detektorů proxy 02 jsou řazeny dle časového pořadí příslušných požadavků na zpracování.How the detector 02 behaves towards the processing request or the result depends on the frameskip parameter. The frameskip parameter specifies the maximum possible number of result requests that can be ignored if the result is not already available. If the ignore result request counter reaches the frameskip value, it forces a wait for the result. The processing request is ignored if the previous request is not processed. The results from the proxy 02 detectors are sorted according to the chronological order of the respective processing requests.

Pokud je požadavek na výsledek přeskočen v důsledku parametru frameskip, tak dojde k nahrazení chybějícího výsledku extrapolací výsledků detektorů proxy 02 z minulých kroků. Párování výsledků z jednotlivých kroků a následná extrapolace jsou modelovány Markovským procesem založeným na dynamice systému (pohybových zákonech).If the result request is skipped due to the frameskip parameter, the missing result is replaced by extrapolating the results of the proxy 02 detectors from the previous steps. Pairing the results from individual steps and subsequent extrapolation are modeled by the Markov process based on system dynamics (laws of motion).

Obrázek 3 popisuje rozhodovací algoritmus rozvrhovače. Vstupem do algoritmu rozvrhovače je počet grafických karet, počet neuronových sítí a jejich paměťových nároků. Algoritmus neustále prochází strom všech kombinací rozložení neuronových sítí po grafických kartách. Prohledávaný strom je prořezán o kombinace, které nevyhovují paměťovým nárokům. Algoritmus používá dvě minimalizační kritéria: (1) součet absolutních hodnot rozdílů ve vážených počtech instancí neuronových sítí dle konfigurace a (2) počet změn nutných k dosažení stavu daného prvním kritériem. Nej lepší nalezené hodnoty v každém podstromu jsou memoizovány.Figure 3 describes the scheduler decision algorithm. The input to the scheduler algorithm is the number of graphics cards, the number of neural networks and their memory requirements. The algorithm constantly goes through a tree of all combinations of neural network layouts on graphics cards. The searched tree is pruned by combinations that do not meet the memory requirements. The algorithm uses two minimization criteria: (1) the sum of the absolute values of the differences in the weighted numbers of neural network instances according to the configuration and (2) the number of changes needed to reach the state given by the first criterion. The best values found in each subtree are memoized.

Vyvažování (váhový koeficient) počtu instancí neuronových sítí se odvíjí od rychlosti inference neuronové sítě na grafické kartě, počtu požadavků na zpracování obrázku za časovou konstantu pro danou instanci neuronové sítě a přítomnosti dalších instancí neuronových sítí na grafické kartě. Mějme s rychlost inference, p počet požadavků, potom lze pro každý pár grafická kartaneuronová síť spočítat váhový koeficientBalancing (weighting) the number of neural network instances depends on the neural network inference rate on the graphics card, the number of image processing requests per time constant for a given neural network instance, and the presence of other neural network instances on the graphics card. Let s have the rate of inference, p the number of requests, then the weight coefficient can be calculated for each pair of graphical kartaneuron network

SiPiSiPi

Wi = ----, ςΑρΑ kde indexy j jdou přes všechny instance neuronových sítí na stejné grafické kartě jako i, vyjma samotné i.Wi = ----, ςΑρΑ where the indices j go through all instances of neural networks on the same graphics card as i, except i itself.

-3CZ 307563 B6-3GB 307563 B6

Průmyslová využitelnostIndustrial applicability

Předložené technické řešení se uplatní zejména v oblasti automatizovaného zpracování záznamu z bezpečnostních kamer v reálném čase. Automatizovaná analýza video obrazu z velkého množství bezpečnostních kamer v reálném čase umožní předcházet nežádoucímu chování, případně teroristickým činům.The presented technical solution will be used especially in the field of automated processing of recordings from security cameras in real time. Automated analysis of video images from a large number of security cameras in real time will prevent unwanted behavior or terrorist acts.

Claims (5)

PATENTOVÉ NÁROKYPATENT CLAIMS 1. Způsob dynamického rozdělení výpočetních procesů jednomu či více grafickým procesorům, vyznačující se tím, že rozvrhovač, nazývaný GPU manažer, jehož vstupem je počet grafických procesorů (09), počet neuronových sítí (03) a jejich paměťových nároků, pomocí diskrétního multikriteriálního optimalizačního algoritmu vždy nalezne optimální řešení, které představuje schéma s maximálně vyváženým počtem instancí neuronových sítí (03) na jednotlivých grafických procesorech (09), a kterého je dosáhnuto minimálním počtem změn ve stávajícím rozvržení neuronových sítí (03) na jednotlivých grafických procesorech (09).A method of dynamically allocating computational processes to one or more graphics processors, characterized in that a scheduler, called a GPU manager, the input of which is the number of graphics processors (09), the number of neural networks (03) and their memory requirements, using a discrete multicriteria optimization algorithm always finds the optimal solution, which is a scheme with the maximum balanced number of instances of neural networks (03) on individual graphics processors (09), and which is achieved by a minimum number of changes in the existing layout of neural networks (03) on individual graphics processors (09). 2. Způsob dynamického rozdělení výpočetních procesů jednomu či více grafickým procesorům podle nároku 1, vyznačující se tím, že strom všech kombinací rozložení neuronových sítí (03) na jednotlivých grafických procesorech je prořezán o kombinace, které nevyhovují paměťovým nárokům podle dvou minimalizačních kritérií, které představují součet absolutních hodnot rozdílů ve vážených počtech instancí procesu neuronová síť (03) a počet změn, nutných k dosažení stavu, daného prvním kritériem.A method of dynamically allocating computational processes to one or more graphics processors according to claim 1, characterized in that the tree of all combinations of neural network distributions (03) on individual graphics processors is cut by combinations that do not meet memory requirements according to two minimization criteria. the sum of the absolute values of the differences in the weighted number of instances of the neural network process (03) and the number of changes necessary to reach the state given by the first criterion. 3. Způsob dynamického rozdělování výpočetních procesů jednomu či více grafickým procesorům podle nároku 2, vyznačující se tím, že na základě žádosti (05) obsahující konfigurační soubor popisující požadovanou neuronovou síť (03), je rozhodnuto, zda dojde ke spuštění nového nebo k párování již existujícího procesu neuronová síť.Method for dynamically allocating computational processes to one or more graphics processors according to claim 2, characterized in that on the basis of a request (05) containing a configuration file describing the required neural network (03), it is decided whether a new one is started or paired existing neural network process. 4. Způsob dynamického rozdělování výpočetních procesů jednomu či více grafickým procesorům podle nároku 1, vyznačující se tím, že jsou trvale udržovány záznamy o párování, jimiž jsou komunikační rozhraní obou procesů, identifikátor procesu a konfigurace neuronové sítě (03) a grafický procesor (09), na které neuronová síť (03) provádí inferenci.A method of dynamically allocating computational processes to one or more graphics processors according to claim 1, characterized in that pairing records are permanently maintained, which are communication interfaces of both processes, process identifier and neural network configuration (03) and graphics processor (09) on which the neural network (03) performs inference. 5. Způsob dynamického rozdělení výpočetních procesů jednomu či více grafickým procesorům podle nároku 2, vyznačující se tím, že obsahuje automatický čisticí mechanizmus, zajišťující, aby strom neobsahoval žádnou instanci neuronové sítě (03), která netvoří pár s běžícími procesy.A method of dynamically allocating computational processes to one or more graphics processors according to claim 2, characterized in that it comprises an automatic purification mechanism ensuring that the tree does not contain any neural network instance (03) that does not pair with running processes.
CZ2017-492A 2017-08-25 2017-08-25 A method of dynamic distribution of computing processes to one or more graphics processing units (GPU) CZ307563B6 (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CZ2017-492A CZ307563B6 (en) 2017-08-25 2017-08-25 A method of dynamic distribution of computing processes to one or more graphics processing units (GPU)

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CZ2017-492A CZ307563B6 (en) 2017-08-25 2017-08-25 A method of dynamic distribution of computing processes to one or more graphics processing units (GPU)

Publications (2)

Publication Number Publication Date
CZ2017492A3 CZ2017492A3 (en) 2018-12-05
CZ307563B6 true CZ307563B6 (en) 2018-12-05

Family

ID=64456572

Family Applications (1)

Application Number Title Priority Date Filing Date
CZ2017-492A CZ307563B6 (en) 2017-08-25 2017-08-25 A method of dynamic distribution of computing processes to one or more graphics processing units (GPU)

Country Status (1)

Country Link
CZ (1) CZ307563B6 (en)

Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR101254181B1 (en) * 2012-12-13 2013-04-19 위아코퍼레이션 주식회사 Face recognition method using data processing technologies based on hybrid approach and radial basis function neural networks
CN106056102A (en) * 2016-07-01 2016-10-26 哈尔滨工业大学 Video-image-analysis-based road vehicle type classification method
CN106407915A (en) * 2016-08-31 2017-02-15 广州精点计算机科技有限公司 SVM (support vector machine)-based face recognition method and device
US20170148223A1 (en) * 2014-10-31 2017-05-25 Fyusion, Inc. Real-time mobile device capture and generation of ar/vr content

Patent Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR101254181B1 (en) * 2012-12-13 2013-04-19 위아코퍼레이션 주식회사 Face recognition method using data processing technologies based on hybrid approach and radial basis function neural networks
US20170148223A1 (en) * 2014-10-31 2017-05-25 Fyusion, Inc. Real-time mobile device capture and generation of ar/vr content
CN106056102A (en) * 2016-07-01 2016-10-26 哈尔滨工业大学 Video-image-analysis-based road vehicle type classification method
CN106407915A (en) * 2016-08-31 2017-02-15 广州精点计算机科技有限公司 SVM (support vector machine)-based face recognition method and device

Also Published As

Publication number Publication date
CZ2017492A3 (en) 2018-12-05

Similar Documents

Publication Publication Date Title
Ali et al. RES: Real-time video stream analytics using edge enhanced clouds
US9760970B2 (en) Video analysis and post processing of multiple video streams
US20200074156A1 (en) Emotion detection enabled video redaction
Evangelio et al. Adaptively splitted GMM with feedback improvement for the task of background subtraction
WO2021258989A1 (en) Facial anti-counterfeiting recognition method and apparatus, and device and storage medium
EP1733560A1 (en) Pipeline architecture for analyzing multiple video streams
US11514605B2 (en) Computer automated interactive activity recognition based on keypoint detection
US20200118060A1 (en) Intelligent classification for product pedigree identification
CN109190646A (en) A kind of data predication method neural network based, device and nerve network system
Singh et al. Methods to detect an event using artificial intelligence and Machine Learning
US20060062430A1 (en) Feed-customized processing of multiple video streams in a pipeline architecture
CN113792680A (en) Behavior recognition method and device based on image fusion, electronic equipment and medium
Kumar et al. Association learning based hybrid model for cloud workload prediction
Mendieta et al. A novel application/infrastructure co-design approach for real-time edge video analytics
CN113487247B (en) Digitalized production management system, video processing method, equipment and storage medium
KR102004408B1 (en) Real-Time Big Data Stream Processing Using GPU
US10693736B2 (en) Real time simulation monitoring
JP2023550776A (en) Self-optimizing video analysis pipeline
Kim et al. Towards the design of a system and a workflow model for medical big data processing in the hybrid cloud
JP2018093324A (en) Video monitoring system, control method of video monitoring system, and video monitoring device
CZ307563B6 (en) A method of dynamic distribution of computing processes to one or more graphics processing units (GPU)
Scheinert et al. Perona: Robust infrastructure fingerprinting for resource-efficient big data analytics
US11126854B1 (en) Efficient identification of objects in videos using motion information
SanMiguel et al. A semantic-guided and self-configurable framework for video analysis
CN116760884B (en) Ocean big data cloud service system and application method