Distribuire gli algoritmi di rilevamento e integrare i risultati
Distribuisci gli algoritmi di rilevamento delle persone, delle ubicazioni di stoccaggio e dei volumi, configura i parametri estrinseci e i parametri della fotocamera e recupera i risultati tramite TCP, UDP, HTTP o Modbus TCP.
Questa guida illustra la distribuzione, la calibrazione, la configurazione e l’integrazione dei risultati per gli algoritmi MRDVS di rilevamento delle persone, delle ubicazioni di stoccaggio e dei volumi. L’algoritmo viene eseguito sulla fotocamera; l’applicazione host dell’algoritmo viene usata per la configurazione, gli aggiornamenti e l’ispezione dei risultati.
Il firmware dell’algoritmo e l’applicazione host dell’algoritmo vengono forniti per ogni progetto. Prima di eseguire il flashing del firmware dell’algoritmo, verifica che la fotocamera esegua una versione del firmware MDS. Ottieni un pacchetto di installazione corrispondente al progetto e al modello della fotocamera.
Usa una staffa rigida per impedire movimenti o vibrazioni dopo l’installazione. Il rilevamento delle persone usa normalmente un’installazione orizzontale o un’installazione con un angolo non superiore a 30°.
Alimenta la fotocamera con un’alimentazione stabilizzata da 24 V CC. Usa un cavo Cat6A o Cat7 per collegare la fotocamera a uno switch gigabit o a un controller.
2
Distribuisci più fotocamere
Installa ogni fotocamera all’altezza e nella posizione specificate nel progetto CAD. Collega tutte le fotocamere tramite uno switch gigabit e verifica l’alimentazione e lo stato del collegamento di ciascuna.
3
Prepara i target di test
Posiziona le persone, i pallet o le merci da rilevare nel campo visivo della fotocamera prima di calibrare i parametri estrinseci e configurare le regioni.
Metti il computer host e la fotocamera sulla stessa sottorete. L’esempio originale usa il seguente schema:
Elemento
Esempio
Indirizzo IP dell’host
192.168.100.xxx
Maschera di sottorete
255.255.255.0
Gateway predefinito
192.168.100.1
1
Apri le impostazioni della scheda
In Windows, apri Pannello di controllo → Centro connessioni di rete e condivisione → Modifica impostazioni scheda, quindi seleziona la scheda Ethernet collegata alla fotocamera.
2
Configura IPv4
Apri Protocollo Internet versione 4 (TCP/IPv4), seleziona Usa il seguente indirizzo IP e inserisci un indirizzo statico non utilizzato nella sottorete della fotocamera.
3
Conferma la connessione
Salva le impostazioni, conferma il collegamento gigabit e usa l’applicazione host per individuare o aprire la fotocamera.
Non lasciare il firewall disabilitato su una rete di produzione. Se l’applicazione host non riesce a connettersi, crea prima una regola per l’applicazione o la porta necessaria. Disabilita temporaneamente il firewall solo su una rete di debug attendibile, quindi ripristina la protezione.
Ottieni l’applicazione host della fotocamera dalla pagina dei download del software.
Installa l’applicazione host della fotocamera al di fuori dell’unità di sistema.
Copia i file dell’applicazione host dell’algoritmo forniti per il progetto nella cartella Tools all’interno della directory dell’applicazione host della fotocamera. Sostituisci i file con lo stesso nome, quindi fai doppio clic sull’eseguibile per avviarlo.
Per aggiornare solo l’applicazione host dell’algoritmo, sostituisci il relativo file .exe con la versione fornita.
La fotocamera si riavvia durante il flashing. Non scollegare l’alimentazione o la rete e non chiudere l’applicazione host. Il pacchetto deve corrispondere al modello della fotocamera, alla versione del firmware MDS e all’algoritmo del progetto.
Applicazione host della fotocamera
Applicazione host dell'algoritmo
Avvia LxCameraViewer.exe e apri la fotocamera.
Seleziona Strumenti di base → Impostazioni funzione → Aggiornamento firmware.
Scegli il file dell’algoritmo di rilevamento fornito e seleziona Esegui.
Seleziona la fotocamera target nell’elenco dei dispositivi.
Seleziona Aggiorna firmware, scegli il file dell’algoritmo di rilevamento e aprilo.
Attendi che la fotocamera ricompaia nell’elenco dei dispositivi.
Quando la fotocamera ricompare dopo il riavvio, il flashing è completato. Uno sfondo verde della fotocamera nell’applicazione host dell’algoritmo indica che la fotocamera è connessa e che l’algoritmo è disponibile.
Avvia LxApplicationViewer.exe. Un’icona verde nell’elenco dei dispositivi indica una fotocamera connessa. Seleziona un dispositivo per alternare la vista corrente tra la modalità RGB e quella della nuvola di punti. Gli utenti standard possono visualizzare i risultati; gli amministratori possono modificare i parametri della fotocamera e dell’algoritmo.
Arresta l’algoritmo corrente. Non si riavvia automaticamente finché la fotocamera non viene riaccesa.
Aggiorna firmware
Apre il flusso di lavoro per l’aggiornamento del firmware dell’algoritmo.
Riavvia fotocamera
Riavvia la fotocamera selezionata.
Quando cambia lo stato, il software salva un fotogramma RGB e i dati della nuvola di punti. I dati di riproduzione non sono condivisi tra gli algoritmi. L’ora della riproduzione usa l’orologio interno della fotocamera, non l’ora di sistema del computer host.Se lo sfondo del dispositivo è giallo, oppure è verde ma l’immagine non si aggiorna, abilita l’aggiornamento automatico per riprendere l’acquisizione delle immagini.
Identifica una fotocamera in una distribuzione con più fotocamere.
Modalità simulazione
Funzione interna; lascia disabilitata.
Modalità salvataggio immagini
Salva i dati delle immagini dell’algoritmo sulla fotocamera.
Modalità acquisizione immagini
MDS non occupa l’accesso alla fotocamera. SDK lo occupa; l’applicazione host non può aprire la fotocamera mentre l’algoritmo è in esecuzione.
x, y, z
Posizione estrinseca della fotocamera; z è l’altezza della fotocamera dal terreno.
roll, pitch, yaw
Angoli di orientamento estrinseco della fotocamera.
Piano ideale
Mantieni il valore predefinito.
Leggi configurazione dalla fotocamera
Legge la configurazione corrente della fotocamera.
Salva e invia
Scrive le modifiche sulla fotocamera. I parametri non salvati non hanno effetto.
Calibrazione estrinseca
Calibra l’altezza e l’orientamento della fotocamera.
Installazione verticale
Installazione orizzontale
Apri Configurazione della fotocamera. Prima della calibrazione, imposta x, y, z, roll, pitch e yaw su 0, quindi seleziona Salva e invia.
Seleziona Calibrazione estrinseca. Al termine della calibrazione, verifica il risultato nel pannello dei parametri.
Apri Configurazione della fotocamera e accedi alla pagina di calibrazione dei parametri.
Allinea il terreno della nuvola di punti al sistema di coordinate: gli assi X rosso e Y verde giacciono sul terreno, mentre l’asse Z blu è perpendicolare al terreno e punta verso l’alto.
Di solito regola prima solo roll e z; imposta gli altri valori su 0. Dopo la verifica, seleziona Salva e invia.
Seleziona Salva e invia dopo aver modificato qualsiasi parametro dell’algoritmo. Mantieni i parametri del filtro sui valori predefiniti, a meno che un test sul posto non dimostri che è necessario modificarli.
Rilevamento persone
Rilevamento ubicazioni di stoccaggio
Rilevamento volumi
Parametro
Descrizione
Versione algoritmo
Versione corrente dell’algoritmo.
Frequenza di rilevamento
Frequenza di aggiornamento delle immagini e dei risultati.
Filtro temporale
Con 3, sono necessari tre risultati identici consecutivi prima che un risultato venga considerato valido.
Dimensione kernel
Dimensione del kernel per le operazioni morfologiche 2D. Valori più grandi riducono i target ed espandono lo sfondo.
Soglia di distanza
Determina se i punti sono simili o appartengono alla stessa classe.
Numero minimo di punti
Numero minimo di punti della nuvola richiesto per il clustering semantico.
Numero minimo di punti non semantici
Numero minimo di punti della nuvola richiesto per il clustering non semantico.
Dimensione del vicinato
Definisce l’intervallo del vicinato dei punti e influisce sulla granularità del clustering.
Rilevamento della rotazione
Corrisponde alla direzione di installazione della fotocamera; usa l’orientamento con il logo rivolto verso il basso come riferimento 0°.
Parametro della regione
Descrizione
Aggiungi / elimina regione
Crea o elimina una regione di rilevamento delle persone.
Riquadro corrente
Seleziona la regione di rilevamento attiva.
X, Y, Z minimo / massimo
Definisce i limiti 3D della regione.
ID
Nome della regione usato per distinguere più regioni.
Trascina per regolare la regione
Trascina con il pulsante sinistro del mouse lungo x e y; trascina con il pulsante destro lungo z.
Parametro
Descrizione
Versione algoritmo
Versione corrente dell’algoritmo.
Filtro AI
Segmentazione semantica; attualmente non disponibile.
Frequenza di rilevamento
Frequenza di aggiornamento dei risultati.
Angolo di allineamento
Offset angolare massimo consentito del carico quando è abilitato il controllo dell’allineamento.
Controllo dell’allineamento
Controlla l’offset angolare e lo stato dei limiti. Gli oggetti rilevati vengono mostrati con riquadri del volume gialli.
Filtro temporale
Emette uno stato valido solo dopo diversi risultati consecutivi coerenti.
Numero minimo di punti
Gli oggetti con meno punti di questo valore vengono ignorati.
Modalità regione
Configurazione
RGB 2D
Usa i pixel X e Y minimo e massimo per definire l’ubicazione di stoccaggio. Sono necessarie la modalità semantica e un modello semantico.
Nuvola di punti 3D
Usa X, Y e Z minimo e massimo per definire l’ubicazione. Trascina con il pulsante sinistro del mouse lungo x e y, oppure con il pulsante destro lungo z.
Funzione avanzata
Descrizione
Copia riquadro corrente
Copia la regione di stoccaggio attiva.
Direzione, spaziatura, conteggio
Definisce copie equidistanti lungo l’asse X, Y o Z.
Esegui
Genera più regioni dalla configurazione.
Calibrazione codice QR
Inserisci la larghezza e la lunghezza dell’ubicazione, Z_MIN e Z_MAX, quindi calibra con un codice QR.
Parametro
Descrizione
Versione algoritmo
Versione corrente dell’algoritmo.
Modalità trigger
Se abilitata, acquisisce un’immagine e un risultato per ogni trigger.
Rilevamento verso l’alto
Rileva usando il sistema di coordinate inverso della fotocamera.
Frequenza di rilevamento
Frequenza di aggiornamento delle immagini e dei risultati.
Distanza del piano di rilevamento
Posizione di riferimento della superficie inferiore dell’oggetto, in mm.
Conteggio vicinato / soglia di distanza
Parametri del filtro; nella maggior parte delle distribuzioni mantieni i valori predefiniti.
Soglia del filtro del vettore normale
Filtra i piani inclinati della nuvola di punti. La raccomandazione originale è 60.
Soglia di distanza del vettore normale
Parametro del filtro. L’intervallo consigliato originale è 20–30.
Numero minimo di punti
Gli oggetti con meno punti di questo valore vengono ignorati.
X, Y, Z minimo
Soglie minime di lunghezza, larghezza e altezza, in mm.
Parametro della regione
Descrizione
X, Y, Z minimo / massimo
Definisce i limiti 3D della regione di rilevamento dei volumi.
Allinea gli assi X e Y alla nuvola di punti del terreno. L’asse Z deve essere perpendicolare al terreno e puntare verso l’alto.
2
Imposta i parametri globali
Apri Rilevamento persone. Di solito è necessario impostare solo Rilevamento della rotazione. La rotazione oraria della fotocamera supporta 0°, 90°, 180° e 270°.
3
Crea la regione di rilevamento
Seleziona Aggiungi regione di rilevamento, imposta X, Y e Z minimo e massimo e sposta la regione sul target. L’esempio originale usa una regione di 1000 × 1000 × 2000 mm.
4
Salva e verifica
Seleziona Salva e invia, esegui un test facendo attraversare la regione a una persona e verifica il risultato nella barra di stato o nella riproduzione dello storico.
Regola di corrispondenza
Nessuna persona
Persona
Ostacolo
Persona e ostacolo
Solo profondità
0
2
2
2
Semantica più profondità
0
1
0
1
La modalità solo profondità segnala ogni oggetto nella regione. La modalità semantica più profondità segnala solo i cluster classificati come persone.
Segui la procedura di calibrazione estrinseca. Allinea X e Y al terreno e mantieni Z perpendicolare e rivolto verso l’alto.
2
Configura i parametri globali
Imposta Controllo dell’allineamento, Angolo di allineamento e Numero minimo di punti per il sito. Abilita il controllo dell’allineamento quando il carico deve essere posizionato con un angolo definito.
3
Crea le ubicazioni di stoccaggio
In modalità nuvola di punti, seleziona Aggiungi ubicazione di stoccaggio, passa alla vista dall’alto e premi X per avviare o interrompere il disegno. Trascina il rettangolo sul pallet e regola i limiti X, Y e Z. Premi di nuovo X per uscire dalla modalità di disegno.
4
Salva e verifica
Seleziona Salva e invia. Configura le ubicazioni in modalità RGB 2D o nuvola di punti 3D e controlla Result nella barra di stato.
Stato dell’ubicazione di stoccaggio
Result
Vuota
0
Occupata, oppure occupata e allineata
1
Occupata con un angolo oltre la soglia di allineamento
2
Occupata e al di fuori dei limiti dell’ubicazione
3
Per una disposizione regolare, usa Copia riquadro corrente per creare ubicazioni con una direzione e una spaziatura fisse. Se è necessaria la verifica tramite codice QR, usa Calibrazione codice QR per configurare le dimensioni dell’ubicazione e l’intervallo di profondità.
Il rilevamento dei volumi procede dall’alto verso il basso. Dopo la calibrazione, l’asse Z punta verso il basso e il piano X/Y è parallelo al terreno.
2
Imposta il piano di rilevamento
Per le merci posizionate direttamente sul pavimento, imposta il piano di rilevamento all’altezza del pavimento. Per misurare solo le merci su un pallet, allinea il piano alla nuvola di punti del pallet.
3
Imposta le dimensioni minime e la regione
Imposta i valori minimi X, Y e Z per filtrare i target piccoli. Quindi imposta i limiti della regione in base al piano di rilevamento e alle dimensioni del carico.
4
Salva e verifica
Seleziona Salva e invia, posiziona uno o più oggetti nella regione e verifica la lunghezza, la larghezza, l’altezza e il conteggio restituiti.
Per usare l’acquisizione con trigger singolo, abilita Modalità trigger in Rilevamento volumi e seleziona Salva e invia. Quindi seleziona Trigger singolo in Strumenti di base oppure invia TM_TRIGGER tramite TCP o UDP.
L’indirizzo IP negli esempi è puramente illustrativo. Sostituiscilo con l’indirizzo della fotocamera sul sito, quindi verifica la rete, lo stato dell’algoritmo e il formato dei risultati prima di eseguire l’integrazione con un sistema di livello superiore.
Il sistema di livello superiore invia una richiesta di risultato all’endpoint di visione, che restituisce una stringa JSON. Usa nell’applicazione client HTTP le intestazioni della richiesta fornite per il progetto e il seguente corpo della richiesta.
Oggetto di stato indicizzato per ID della regione di rilevamento: 0 indica nessun target, 1 indica che è stata rilevata una persona e 2 indica che un oggetto è stato rilevato solo dalla regola di profondità.
I dettagli del cluster includono rbx2d, rby2d, tlx2d e tly2d (coordinate del riquadro 2D), semantic_index, traceID e x_min, x_max, y_min, y_max, z_min e z_max (limiti del riquadro 3D).
Dettagli dell’ubicazione X: centro x, y e z, lunghezza, larghezza, altezza e offset angolare rispetto al riquadro di delimitazione. Un’ubicazione creata in 2D restituisce tutti valori -1.
Verifica che host e fotocamera condividano una sottorete, che la scheda di rete sia gigabit e che l’alimentazione e i collegamenti allo switch siano funzionanti.
I parametri non hanno effetto
Verifica che dopo la modifica sia stato selezionato Salva e invia.
Nessun risultato dell’algoritmo
Verifica che sia stato eseguito il flashing del firmware dell’algoritmo corretto, che il dispositivo sia verde e che l’algoritmo sia abilitato.
Nuvola di punti vuota o non aggiornata
Scorri sull’area della nuvola di punti per visualizzare i dati; se necessario, abilita l’aggiornamento automatico.
Risultati anomali delle ubicazioni o dei volumi
Ricontrolla le direzioni degli assi estrinseci, il piano di rilevamento e i limiti delle regioni, quindi ripeti il test con oggetti del sito.
此页面对您有帮助吗?
{"docsConfig":{"theme":"mint","$schema":"https://mintlify.com/docs.json","name":"MRDVS","description":"迈尔微视产品、开发集成、行业解决方案与客户支持文档。","colors":{"primary":"#1248B8","light":"#43A5E5","dark":"#217DB5"},"logo":{"light":"https://mintcdn.com/mrdvs/gEte5Lm3vPtLdk_a/logo/logo.svg?fit=max\u0026auto=format\u0026n=gEte5Lm3vPtLdk_a\u0026q=85\u0026s=1d0001033c0b1f686e1d5e4c6576c469","dark":"https://mintcdn.com/mrdvs/gEte5Lm3vPtLdk_a/logo/logo.svg?fit=max\u0026auto=format\u0026n=gEte5Lm3vPtLdk_a\u0026q=85\u0026s=1d0001033c0b1f686e1d5e4c6576c469"},"favicon":{"light":"https://mintcdn.com/mrdvs/JvNnjyd3Kf1Xtjg2/images/favicon.png?fit=max\u0026auto=format\u0026n=JvNnjyd3Kf1Xtjg2\u0026q=85\u0026s=32919de7e789d7ed8f560b485c05bd4a","dark":"https://mintcdn.com/mrdvs/JvNnjyd3Kf1Xtjg2/images/favicon.png?fit=max\u0026auto=format\u0026n=JvNnjyd3Kf1Xtjg2\u0026q=85\u0026s=32919de7e789d7ed8f560b485c05bd4a"},"appearance":{"default":"light","strict":true},"navbar":{"links":[{"icon":{"style":"brands","name":"github"},"href":"https://github.com/Lanxin-MRDVS","label":"GitHub"},{"icon":"/images/favicon.png","href":"https://www.mrdvs.cn/","label":"MRDVS"}],"primary":{"type":"button","label":"联系我们","href":"https://work.weixin.qq.com/ca/cawcde978188b336f1"}},"footer":{"socials":{"github":"https://github.com/Lanxin-MRDVS/CameraSDK","linkedin":"https://www.linkedin.com/company/mrdvs","youtube":"https://www.youtube.com/@MRDVS-2024","website":"https://www.mrdvs.cn/"},"links":[{"header":"产品","items":[{"label":"S 系列3D相机","href":"https://www.mrdvs.cn/product/3d-obstacle-avoidance-cameras-s-series"},{"label":"M 系列3D相机","href":"https://www.mrdvs.cn/product/m-series"},{"label":"V 系列导航模组","href":"https://www.mrdvs.cn/product/v-series"}]},{"header":"解决方案","items":[{"label":"移动机器人视觉","href":"https://www.mrdvs.cn/solutions/solutions-industrial-mobile-robot"},{"label":"仓储物流自动化","href":"https://www.mrdvs.cn/solutions/solutions-warehouse-visual-perception"},{"label":"无人机视觉感知","href":"https://www.mrdvs.cn/solutions/solutions-drones"}]},{"header":"联系我们","items":[{"label":"关于 MRDVS","href":"/about"},{"label":"售前咨询","href":"https://work.weixin.qq.com/ca/cawcde978188b336f1"},{"label":"电话:400-025-6680","href":"/contact"},{"label":"[email protected]","href":"mailto:[email protected]"}]}]},"seo":{"metatags":{"canonical":"https://docs.mrdvs.com","google-site-verification":"paNq6FdXn6w3vlYqGqsx4YFtZgIyoE54Ya803O0ilNM","baidu-site-verification":"codeva-aVWshvu4wM","msvalidate.01":"79667988DD5B77655E355B82AFD283E3"}},"icons":{"library":"fontawesome"},"styling":{"eyebrows":"section","latex":false},"integrations":{"clarity":{"projectId":"xmhznno359"},"ga4":{"measurementId":"G-0F8Q5CXHX4"}},"errors":{"404":{"redirect":false}},"contextual":{"options":["copy","view","chatgpt","claude"],"display":"header"},"interaction":{"drilldown":false},"navigation":{"languages":[{"language":"zh-CN","default":true,"footer":{"socials":{"github":"https://github.com/Lanxin-MRDVS/CameraSDK","linkedin":"https://www.linkedin.com/company/mrdvs","youtube":"https://www.youtube.com/@MRDVS-2024","website":"https://www.mrdvs.cn/"},"links":[{"header":"产品","items":[{"label":"S 系列3D相机","href":"https://www.mrdvs.cn/product/3d-obstacle-avoidance-cameras-s-series"},{"label":"M 系列3D相机","href":"https://www.mrdvs.cn/product/m-series"},{"label":"V 系列导航模组","href":"https://www.mrdvs.cn/product/v-series"}]},{"header":"解决方案","items":[{"label":"移动机器人视觉","href":"https://www.mrdvs.cn/solutions/solutions-industrial-mobile-robot"},{"label":"仓储物流自动化","href":"https://www.mrdvs.cn/solutions/solutions-warehouse-visual-perception"},{"label":"无人机视觉感知","href":"https://www.mrdvs.cn/solutions/solutions-drones"}]},{"header":"联系我们","items":[{"label":"关于 MRDVS","href":"/about"},{"label":"售前咨询","href":"https://work.weixin.qq.com/ca/cawcde978188b336f1"},{"label":"电话:400-025-6680","href":"/contact"},{"label":"[email protected]","href":"mailto:[email protected]"},{"label":"浙ICP备2023021387号-2","href":"https://beian.miit.gov.cn/"}]}]},"navbar":{"links":[{"icon":{"style":"brands","name":"github"},"href":"https://github.com/Lanxin-MRDVS","label":"GitHub"},{"icon":"/images/favicon.png","href":"https://www.mrdvs.cn/","label":"MRDVS"}],"primary":{"type":"button","label":"联系我们","href":"https://work.weixin.qq.com/ca/cawcde978188b336f1"}},"href":""},{"language":"en","footer":{"socials":{"github":"https://github.com/Lanxin-MRDVS/CameraSDK","linkedin":"https://www.linkedin.com/company/mrdvs","youtube":"https://www.youtube.com/@MRDVS-2024","website":"https://mrdvs.com/"},"links":[{"header":"Products","items":[{"label":"S Series 3D Cameras","href":"https://mrdvs.com/s-series-obstacle-avoidance-robot-cameras"},{"label":"M Series 3D Cameras","href":"https://mrdvs.com/m-series-time-of-flight-camera"},{"label":"V Series Localization","href":"https://mrdvs.com/v2-pro-rtls-slam-solution"}]},{"header":"Solutions","items":[{"label":"Mobile Robot Vision","href":"https://mrdvs.com/humanoids-quadrupeds-robots"},{"label":"Warehouse \u0026 Logistics","href":"https://mrdvs.com/vision-guided-robotics"},{"label":"Lawn Mower Perception","href":"https://mrdvs.com/solid-state-lidar-vision-fusion"}]},{"header":"Contact Us","items":[{"label":"About MRDVS","href":"/en/about"},{"label":"WhatsApp","href":"https://wa.me/8613370882355"},{"label":"[email protected]","href":"mailto:[email protected]"}]}]},"navbar":{"links":[{"icon":{"style":"brands","name":"github"},"href":"https://github.com/Lanxin-MRDVS","label":"GitHub"},{"icon":"/images/favicon.png","href":"https://mrdvs.com/","label":"MRDVS"}],"primary":{"type":"button","label":"Contact Us","href":"/en/contact"}},"href":"en"},{"language":"ja","footer":{"socials":{"github":"https://github.com/Lanxin-MRDVS/CameraSDK","linkedin":"https://www.linkedin.com/company/mrdvs","youtube":"https://www.youtube.com/@MRDVS-2024","website":"https://mrdvs.com/"},"links":[{"header":"製品","items":[{"label":"Sシリーズ3Dカメラ","href":"https://mrdvs.com/s-series-obstacle-avoidance-robot-cameras"},{"label":"Mシリーズ3Dカメラ","href":"https://mrdvs.com/m-series-time-of-flight-camera"},{"label":"Vシリーズローカライゼーション","href":"https://mrdvs.com/v2-pro-rtls-slam-solution"}]},{"header":"ソリューション","items":[{"label":"モバイルロボットビジョン","href":"https://mrdvs.com/humanoids-quadrupeds-robots"},{"label":"倉庫・物流","href":"https://mrdvs.com/vision-guided-robotics"},{"label":"芝刈り機向け認識","href":"https://mrdvs.com/solid-state-lidar-vision-fusion"}]},{"header":"お問い合わせ","items":[{"label":"MRDVSについて","href":"/ja/about"},{"label":"WhatsApp","href":"https://wa.me/8613370882355"},{"label":"[email protected]","href":"mailto:[email protected]"}]}]},"navbar":{"links":[{"icon":{"style":"brands","name":"github"},"href":"https://github.com/Lanxin-MRDVS","label":"GitHub"},{"icon":"/images/favicon.png","href":"https://mrdvs.com/","label":"MRDVS"}],"primary":{"type":"button","label":"お問い合わせ","href":"/ja/contact"}},"href":"ja"},{"language":"ko","footer":{"socials":{"github":"https://github.com/Lanxin-MRDVS/CameraSDK","linkedin":"https://www.linkedin.com/company/mrdvs","youtube":"https://www.youtube.com/@MRDVS-2024","website":"https://mrdvs.com/"},"links":[{"header":"제품","items":[{"label":"S 시리즈 3D 카메라","href":"https://mrdvs.com/s-series-obstacle-avoidance-robot-cameras"},{"label":"M 시리즈 3D 카메라","href":"https://mrdvs.com/m-series-time-of-flight-camera"},{"label":"V 시리즈 위치 추정","href":"https://mrdvs.com/v2-pro-rtls-slam-solution"}]},{"header":"솔루션","items":[{"label":"이동 로봇 비전","href":"https://mrdvs.com/humanoids-quadrupeds-robots"},{"label":"창고 및 물류","href":"https://mrdvs.com/vision-guided-robotics"},{"label":"잔디깎이 로봇 인식","href":"https://mrdvs.com/solid-state-lidar-vision-fusion"}]},{"header":"문의","items":[{"label":"MRDVS 소개","href":"/ko/about"},{"label":"WhatsApp","href":"https://wa.me/8613370882355"},{"label":"[email protected]","href":"mailto:[email protected]"}]}]},"navbar":{"links":[{"icon":{"style":"brands","name":"github"},"href":"https://github.com/Lanxin-MRDVS","label":"GitHub"},{"icon":"/images/favicon.png","href":"https://mrdvs.com/","label":"MRDVS"}],"primary":{"type":"button","label":"문의하기","href":"/ko/contact"}},"href":"ko"},{"language":"vi","footer":{"socials":{"github":"https://github.com/Lanxin-MRDVS/CameraSDK","linkedin":"https://www.linkedin.com/company/mrdvs","youtube":"https://www.youtube.com/@MRDVS-2024","website":"https://mrdvs.com/"},"links":[{"header":"Sản phẩm","items":[{"label":"Camera 3D dòng S","href":"https://mrdvs.com/s-series-obstacle-avoidance-robot-cameras"},{"label":"Camera 3D dòng M","href":"https://mrdvs.com/m-series-time-of-flight-camera"},{"label":"Định vị dòng V","href":"https://mrdvs.com/v2-pro-rtls-slam-solution"}]},{"header":"Giải pháp","items":[{"label":"Thị giác robot di động","href":"https://mrdvs.com/humanoids-quadrupeds-robots"},{"label":"Kho vận \u0026 logistics","href":"https://mrdvs.com/vision-guided-robotics"},{"label":"Nhận thức cho máy cắt cỏ","href":"https://mrdvs.com/solid-state-lidar-vision-fusion"}]},{"header":"Liên hệ","items":[{"label":"Giới thiệu MRDVS","href":"/vi/about"},{"label":"WhatsApp","href":"https://wa.me/8613370882355"},{"label":"[email protected]","href":"mailto:[email protected]"}]}]},"navbar":{"links":[{"icon":{"style":"brands","name":"github"},"href":"https://github.com/Lanxin-MRDVS","label":"GitHub"},{"icon":"/images/favicon.png","href":"https://mrdvs.com/","label":"MRDVS"}],"primary":{"type":"button","label":"Liên hệ","href":"/vi/contact"}},"href":"vi"},{"language":"de","footer":{"socials":{"github":"https://github.com/Lanxin-MRDVS/CameraSDK","linkedin":"https://www.linkedin.com/company/mrdvs","youtube":"https://www.youtube.com/@MRDVS-2024","website":"https://mrdvs.com/"},"links":[{"header":"Produkte","items":[{"label":"3D-Kameras der S-Serie","href":"https://mrdvs.com/s-series-obstacle-avoidance-robot-cameras"},{"label":"3D-Kameras der M-Serie","href":"https://mrdvs.com/m-series-time-of-flight-camera"},{"label":"Lokalisierung der V-Serie","href":"https://mrdvs.com/v2-pro-rtls-slam-solution"}]},{"header":"Lösungen","items":[{"label":"Robotersicht für mobile Roboter","href":"https://mrdvs.com/humanoids-quadrupeds-robots"},{"label":"Lager und Logistik","href":"https://mrdvs.com/vision-guided-robotics"},{"label":"Wahrnehmung für Rasenmäher","href":"https://mrdvs.com/solid-state-lidar-vision-fusion"}]},{"header":"Kontakt","items":[{"label":"Über MRDVS","href":"/de/about"},{"label":"WhatsApp","href":"https://wa.me/8613370882355"},{"label":"[email protected]","href":"mailto:[email protected]"}]}]},"navbar":{"links":[{"icon":{"style":"brands","name":"github"},"href":"https://github.com/Lanxin-MRDVS","label":"GitHub"},{"icon":"/images/favicon.png","href":"https://mrdvs.com/","label":"MRDVS"}],"primary":{"type":"button","label":"Kontakt","href":"/de/contact"}},"href":"de"},{"language":"it","footer":{"socials":{"github":"https://github.com/Lanxin-MRDVS/CameraSDK","linkedin":"https://www.linkedin.com/company/mrdvs","youtube":"https://www.youtube.com/@MRDVS-2024","website":"https://mrdvs.com/"},"links":[{"header":"Prodotti","items":[{"label":"Telecamere 3D serie S","href":"https://mrdvs.com/s-series-obstacle-avoidance-robot-cameras"},{"label":"Telecamere 3D serie M","href":"https://mrdvs.com/m-series-time-of-flight-camera"},{"label":"Localizzazione serie V","href":"https://mrdvs.com/v2-pro-rtls-slam-solution"}]},{"header":"Soluzioni","items":[{"label":"Visione per robot mobili","href":"https://mrdvs.com/humanoids-quadrupeds-robots"},{"label":"Magazzino e logistica","href":"https://mrdvs.com/vision-guided-robotics"},{"label":"Percezione per rasaerba","href":"https://mrdvs.com/solid-state-lidar-vision-fusion"}]},{"header":"Contatti","items":[{"label":"Informazioni su MRDVS","href":"/it/about"},{"label":"WhatsApp","href":"https://wa.me/8613370882355"},{"label":"[email protected]","href":"mailto:[email protected]"}]}]},"navbar":{"links":[{"icon":{"style":"brands","name":"github"},"href":"https://github.com/Lanxin-MRDVS","label":"GitHub"},{"icon":"/images/favicon.png","href":"https://mrdvs.com/","label":"MRDVS"}],"primary":{"type":"button","label":"Contatti","href":"/it/contact"}},"href":"it"},{"language":"es","footer":{"socials":{"github":"https://github.com/Lanxin-MRDVS/CameraSDK","linkedin":"https://www.linkedin.com/company/mrdvs","youtube":"https://www.youtube.com/@MRDVS-2024","website":"https://mrdvs.com/"},"links":[{"header":"Productos","items":[{"label":"Cámaras 3D de la serie S","href":"https://mrdvs.com/s-series-obstacle-avoidance-robot-cameras"},{"label":"Cámaras 3D de la serie M","href":"https://mrdvs.com/m-series-time-of-flight-camera"},{"label":"Localización de la serie V","href":"https://mrdvs.com/v2-pro-rtls-slam-solution"}]},{"header":"Soluciones","items":[{"label":"Visión para robots móviles","href":"https://mrdvs.com/humanoids-quadrupeds-robots"},{"label":"Almacén y logística","href":"https://mrdvs.com/vision-guided-robotics"},{"label":"Percepción para cortacéspedes","href":"https://mrdvs.com/solid-state-lidar-vision-fusion"}]},{"header":"Contacto","items":[{"label":"Acerca de MRDVS","href":"/es/about"},{"label":"WhatsApp","href":"https://wa.me/8613370882355"},{"label":"[email protected]","href":"mailto:[email protected]"}]}]},"navbar":{"links":[{"icon":{"style":"brands","name":"github"},"href":"https://github.com/Lanxin-MRDVS","label":"GitHub"},{"icon":"/images/favicon.png","href":"https://mrdvs.com/","label":"MRDVS"}],"primary":{"type":"button","label":"Contacto","href":"/es/contact"}},"href":"es"},{"language":"ru","footer":{"socials":{"github":"https://github.com/Lanxin-MRDVS/CameraSDK","linkedin":"https://www.linkedin.com/company/mrdvs","youtube":"https://www.youtube.com/@MRDVS-2024","website":"https://mrdvs.com/"},"links":[{"header":"Продукты","items":[{"label":"3D-камеры серии S","href":"https://mrdvs.com/s-series-obstacle-avoidance-robot-cameras"},{"label":"3D-камеры серии M","href":"https://mrdvs.com/m-series-time-of-flight-camera"},{"label":"Локализация серии V","href":"https://mrdvs.com/v2-pro-rtls-slam-solution"}]},{"header":"Решения","items":[{"label":"Зрение мобильных роботов","href":"https://mrdvs.com/humanoids-quadrupeds-robots"},{"label":"Склад и логистика","href":"https://mrdvs.com/vision-guided-robotics"},{"label":"Восприятие для газонокосилок","href":"https://mrdvs.com/solid-state-lidar-vision-fusion"}]},{"header":"Связаться с нами","items":[{"label":"О MRDVS","href":"/ru/about"},{"label":"WhatsApp","href":"https://wa.me/8613370882355"},{"label":"[email protected]","href":"mailto:[email protected]"}]}]},"navbar":{"links":[{"icon":{"style":"brands","name":"github"},"href":"https://github.com/Lanxin-MRDVS","label":"GitHub"},{"icon":"/images/favicon.png","href":"https://mrdvs.com/","label":"MRDVS"}],"primary":{"type":"button","label":"Связаться с нами","href":"/ru/contact"}},"href":"ru"}]}},"deployment":{"deploymentMetadataValue":{"subdomain":"mrdvs","hasAudioNarration":false,"actualSubdomain":"mrdvs","customDomains":["docs.mrdvs.com"],"gitSource":{"type":"github","owner":"lanxin-mrdvs","repo":"mintlify_docs","deployBranch":"main","contentDirectory":"","isPrivate":true,"mountPath":"","label":""},"chroma":{"collectionId":"ac0a5eca-ccf5-4877-b375-714079183569","liveDeploymentHistoryId":"6adb039170fea1df2fc69394","schemaVersion":"v3","latestBuiltDeploymentHistoryId":"6adb039170fea1df2fc69394"},"feedback":{"issues":false,"thumbs":true,"edits":false,"agentFeedback":true},"entitlements":{},"buildId":"6adb039170fea1df2fc69394","clientVersion":"0.0.3965","searchFilterCounts":[{"language":"zh-CN","tag":"工业解决方案","count":22},{"language":"de","tag":"Industrielle Lösungen","count":22},{"language":"en","tag":"Industrial solutions","count":22},{"language":"es","tag":"Soluciones industriales","count":22},{"language":"it","tag":"Soluzioni industriali","count":22},{"language":"ja","tag":"産業向けソリューション","count":22},{"language":"ko","tag":"산업 솔루션","count":22},{"language":"ru","tag":"Промышленные решения","count":22},{"language":"vi","tag":"Giải pháp công nghiệp","count":22},{"language":"zh-CN","tag":"开发者中心","count":13},{"language":"zh-CN","tag":"解决方案与案例","count":13},{"language":"de","tag":"Entwickler","count":13},{"language":"de","tag":"Lösungen und Praxisbeispiele","count":13},{"language":"en","tag":"Developers","count":13},{"language":"en","tag":"Solutions and case studies","count":13},{"language":"es","tag":"Desarrolladores","count":13},{"language":"es","tag":"Soluciones y casos de uso","count":13},{"language":"it","tag":"Sviluppatori","count":13},{"language":"it","tag":"Soluzioni e casi applicativi","count":13},{"language":"ja","tag":"開発者向け","count":13},{"language":"ja","tag":"ソリューション・導入事例","count":13},{"language":"ko","tag":"개발자 센터","count":13},{"language":"ko","tag":"솔루션 및 적용 사례","count":13},{"language":"ru","tag":"Разработчикам","count":13},{"language":"ru","tag":"Решения и примеры внедрения","count":13},{"language":"vi","tag":"Nhà phát triển","count":13},{"language":"vi","tag":"Giải pháp và dự án thực tế","count":13},{"language":"zh-CN","tag":"支持与下载","count":11},{"language":"de","tag":"Support und Downloads","count":11},{"language":"en","tag":"Support and downloads","count":11},{"language":"es","tag":"Soporte y descargas","count":11},{"language":"it","tag":"Supporto e download","count":11},{"language":"ja","tag":"サポート・ダウンロード","count":11},{"language":"ko","tag":"지원 및 다운로드","count":11},{"language":"ru","tag":"Поддержка и загрузки","count":11},{"language":"vi","tag":"Hỗ trợ và tải xuống","count":11},{"language":"zh-CN","tag":"视觉硬件产品","count":10},{"language":"de","tag":"Vision-Hardware","count":10},{"language":"en","tag":"Vision hardware","count":10},{"language":"es","tag":"Hardware de visión","count":10},{"language":"it","tag":"Hardware di visione","count":10},{"language":"ja","tag":"ビジョンハードウェア","count":10},{"language":"ko","tag":"비전 하드웨어","count":10},{"language":"ru","tag":"Оборудование машинного зрения","count":10},{"language":"vi","tag":"Phần cứng thị giác","count":10},{"language":"zh-CN","tag":"智能仓储与搬运","count":8},{"language":"de","tag":"Lagerautomatisierung und Materialtransport","count":8},{"language":"en","tag":"Warehouse automation and handling","count":8},{"language":"es","tag":"Automatización de almacenes y manipulación","count":8},{"language":"it","tag":"Automazione di magazzino e movimentazione","count":8},{"language":"ja","tag":"倉庫自動化・搬送","count":8},{"language":"ko","tag":"창고 자동화 및 물류 이송","count":8},{"language":"ru","tag":"Автоматизация складов и перемещение грузов","count":8},{"language":"vi","tag":"Tự động hóa kho và vận chuyển hàng","count":8},{"language":"zh-CN","tag":"仓储物流","count":6},{"language":"de","tag":"Lager und Logistik","count":6},{"language":"en","tag":"Warehouse and logistics","count":6},{"language":"es","tag":"Almacén y logística","count":6},{"language":"it","tag":"Magazzino e logistica","count":6},{"language":"ja","tag":"倉庫・物流","count":6},{"language":"ko","tag":"창고 및 물류","count":6},{"language":"ru","tag":"Склад и логистика","count":6},{"language":"vi","tag":"Kho vận","count":6},{"language":"zh-CN","tag":"概览","count":5},{"language":"zh-CN","tag":"S 系列环境感知 3D 相机","count":5},{"language":"zh-CN","tag":"下载中心","count":5},{"language":"de","tag":"Überblick","count":5},{"language":"de","tag":"S-Serie – 3D-Kameras zur Umfelderfassung","count":5},{"language":"de","tag":"Downloads","count":5},{"language":"en","tag":"Overview","count":5},{"language":"en","tag":"S Series 3D perception cameras","count":5},{"language":"en","tag":"Downloads","count":5},{"language":"es","tag":"Descripción general","count":5},{"language":"es","tag":"Serie S – cámaras 3D de percepción del entorno","count":5},{"language":"es","tag":"Descargas","count":5},{"language":"it","tag":"Panoramica","count":5},{"language":"it","tag":"Serie S – telecamere 3D per la percezione ambientale","count":5},{"language":"it","tag":"Download","count":5},{"language":"ja","tag":"概要","count":5},{"language":"ja","tag":"Sシリーズ 環境認識3Dカメラ","count":5},{"language":"ja","tag":"ダウンロード","count":5},{"language":"ko","tag":"개요","count":5},{"language":"ko","tag":"S 시리즈 환경 인식 3D 카메라","count":5},{"language":"ko","tag":"다운로드","count":5},{"language":"ru","tag":"Обзор","count":5},{"language":"ru","tag":"Серия S — 3D-камеры восприятия среды","count":5},{"language":"ru","tag":"Загрузки","count":5},{"language":"vi","tag":"Tổng quan","count":5},{"language":"vi","tag":"Camera 3D nhận biết môi trường dòng S","count":5},{"language":"vi","tag":"Tải xuống","count":5}]},"assistantConfig":{"enableAskAiButton":false,"enableStarterQuestions":false,"enableContextualStarterQuestions":false,"enableAskAiSearchBar":true},"hasChatPermissions":false,"hasWebMcpPermissions":false,"toggles":[{"name":"kill-isr","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"agent-mintlify-slack","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"editor-v7-file-tree","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"agent-integrations-settings","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"automations-pr-grouping","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"custom-prefix","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"analytics-v7","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"user-flows-analytics","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"no-publish-flow","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"workos-onboarding","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"llms-txt-v2","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"pause-universal-search-reconcile","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"snapshot-serving-live","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"stripTemperatureMiddleware","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"per-site-search-delta","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"support-platform-pylon-zendesk","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"snapshot-serving","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"instant-rollback","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"granular-notifications-server","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"granular-notifications","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"editor-private-page-search","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"automations-fable","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"fixed-ai-action-pricing","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"automation-resolve-merge-conflict","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"scoped-publishing","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"mintql","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"page-level-analytics","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"editor-version-history-v2","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"editor-nav-generations","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"billing-page-v2","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"workspace-projects","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"assistant-v5","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"byok-sep-25","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"fork-pr-previews","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"revalidation-jwt","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"vite-origin","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"editor-agent-model-picker","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"billing-updated-9-15","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"hobby-abuse-scan","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"dashboard-inbox","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false}],"isAtlas":false,"googleFontsInlined":false},"customCss":[{"filePath":"assets/styles.css","content":"#localization-select-trigger::before{background-color:currentColor;content:\"\";flex:0 0 .875rem;height:.875rem;margin-right:.125rem;-webkit-mask:url(https://d3gk2c5xim1je2.cloudfront.net/fontawesome/v7.2.0/solid/language.svg) center/contain no-repeat;mask:url(https://d3gk2c5xim1je2.cloudfront.net/fontawesome/v7.2.0/solid/language.svg) center/contain no-repeat;width:.875rem}#ask-assistant-code-block-button,#assistant-entry,#assistant-entry-mobile,#chat-assistant-sheet{display:none!important}"},{"filePath":"style.css","content":".nav-tag-pill-text[data-nav-tag]{display:inline-flex;align-items:center;font-size:.8125rem!important;font-weight:500!important;line-height:1.35!important;padding:.125rem .375rem!important;border-radius:.375rem!important;white-space:nowrap}#sidebar .nav-tag-pill,#sidebar [data-nav-tag]{border-width:0!important;border-style:none!important;outline:0!important;box-shadow:none!important}.mrdvs-discontinued,[data-nav-tag=已停产],[data-nav-tag=新品]{color:#b91c1c!important;background-color:#fef2f2!important;border:0!important}.dark .mrdvs-discontinued,.dark [data-nav-tag=已停产]{color:#fca5a5!important;background-color:#450a0a!important}[data-nav-tag=新品]{color:#854d0e!important;background-color:#fef9c3!important}.dark [data-nav-tag=新品]{color:#fde047!important;background-color:#422006!important}.mrdvs-icp-source{display:none!important}.mrdvs-icp{width:100%;grid-column:1/-1;flex-basis:100%;padding:1.25rem 0;text-align:center;font-size:.8125rem;line-height:1.8;color:#525252}.mrdvs-icp a{text-decoration:underline;text-underline-offset:3px}.dark .mrdvs-icp{color:#d4d4d4}[data-nav-tag=Discontinued]{color:#b91c1c!important;background-color:#fef2f2!important;border:0!important}[data-nav-tag=New]{color:#854d0e!important;background-color:#fef9c3!important;border:0!important}[data-nav-tag=生産終了]{color:#b91c1c!important;background-color:#fef2f2!important;border:0!important}[data-nav-tag=新製品],[data-nav-tag=단종]{color:#854d0e!important;background-color:#fef9c3!important;border:0!important}[data-nav-tag=단종]{color:#b91c1c!important;background-color:#fef2f2!important}[data-nav-tag=신제품]{color:#854d0e!important;background-color:#fef9c3!important;border:0!important}[data-nav-tag=\"Ngừng sản xuất\"]{color:#b91c1c!important;background-color:#fef2f2!important;border:0!important}[data-nav-tag=Mới]{color:#854d0e!important;background-color:#fef9c3!important;border:0!important}[data-nav-tag=Abgekündigt]{color:#b91c1c!important;background-color:#fef2f2!important;border:0!important}[data-nav-tag=Neu]{color:#854d0e!important;background-color:#fef9c3!important;border:0!important}[data-nav-tag=\"Fuori produzione\"]{color:#b91c1c!important;background-color:#fef2f2!important;border:0!important}[data-nav-tag=Novità]{color:#854d0e!important;background-color:#fef9c3!important;border:0!important}[data-nav-tag=Descatalogado]{color:#b91c1c!important;background-color:#fef2f2!important;border:0!important}[data-nav-tag=Nuevo]{color:#854d0e!important;background-color:#fef9c3!important;border:0!important}[data-nav-tag=\"Снят с производства\"]{color:#b91c1c!important;background-color:#fef2f2!important;border:0!important}[data-nav-tag=Новинка]{color:#854d0e!important;background-color:#fef9c3!important;border:0!important}html #sidebar-content a[href] .nav-tag-pill-text[data-nav-tag]{border:0 transparent!important;box-shadow:none!important}[data-nav-tag=即将发布]{color:#1d4ed8!important;background-color:#eff6ff!important;border:0!important;white-space:nowrap}.dark [data-nav-tag=即将发布]{color:#93c5fd!important;background-color:#172554!important}.mrdvs-video{width:100%;margin:1.5rem 0}.mrdvs-video-screen{position:relative;width:100%;aspect-ratio:16/9;overflow:hidden;border-radius:.875rem;background:#14141c}.mrdvs-video-screen iframe,.mrdvs-video-start{position:absolute;inset:0;display:block;width:100%;height:100%;border:0}.mrdvs-video-start{padding:0;cursor:pointer;color:#fff;background:#14141c}.mrdvs-video-start img{width:100%;height:100%;margin:0;object-fit:contain;opacity:.85}.mrdvs-video-start:hover img{opacity:1}.mrdvs-video-start:focus-visible{outline:3px solid #60a5fa;outline-offset:-4px}.mrdvs-video-label,.mrdvs-video-play{position:absolute;left:50%;background:rgb(20 20 28/88%)}.mrdvs-video-play{top:50%;display:grid;place-items:center;transform:translate(-50%,-50%);width:64px;height:64px;border-radius:50%;font-size:25px;padding-left:4px}.mrdvs-video-label{bottom:16px;transform:translateX(-50%);padding:4px 12px;border-radius:6px;font-size:14px;white-space:nowrap}.mrdvs-video figcaption{display:flex;justify-content:space-between;gap:.5rem 1rem;flex-wrap:wrap;margin-top:.6rem;font-size:14px;line-height:1.6}.mrdvs-video figcaption a{flex-shrink:0}.mrdvs-legacy-manual td p,.mrdvs-legacy-manual th p{margin:.25rem 0}[data-nav-tag=\"Coming soon\"],[data-nav-tag=\"In arrivo\"],[data-nav-tag=\"Sắp ra mắt\"],[data-nav-tag=\"출시 예정\"],[data-nav-tag=Demnächst],[data-nav-tag=Próximamente],[data-nav-tag=Скоро],[data-nav-tag=近日発売]{color:#1d4ed8!important;background-color:#eff6ff!important;border:0!important;white-space:nowrap}.dark [data-nav-tag=\"Coming soon\"],.dark [data-nav-tag=\"In arrivo\"],.dark [data-nav-tag=\"Sắp ra mắt\"],.dark [data-nav-tag=\"출시 예정\"],.dark [data-nav-tag=Demnächst],.dark [data-nav-tag=Próximamente],.dark [data-nav-tag=Скоро],.dark [data-nav-tag=近日発売]{color:#93c5fd!important;background-color:#172554!important}.mrdvs-youtube{min-height:200px;border:0}.mrdvs-product-family [data-component-part=card-image]{width:100%;height:auto;aspect-ratio:2/1;max-height:180px;object-fit:cover;object-position:center 70%}.mrdvs-product-family [data-component-part=card-content-container]{padding:14px 16px 16px}.mrdvs-product-family [data-component-part=card-content]{font-size:15px;line-height:1.6}.frame[data-name=frame]:has(img):not(:has(video,iframe)){padding:0;background:0 0;margin-top:1.5rem;margin-bottom:1.5rem}.frame[data-name=frame]:has(img):not(:has(video,iframe))>.absolute{display:none}.frame[data-name=frame]:has(img):not(:has(video,iframe)) img{max-width:100%;height:auto}.frame:has(.mrdvs-product-hero){max-width:560px;margin-left:auto;margin-right:auto}.frame .mrdvs-product-hero img{width:auto;max-height:360px;object-fit:contain}.frame:has(.mrdvs-imaging-demo){max-width:520px;margin-left:auto;margin-right:auto}#navbar .navbar-link a{background:0 0;color:#526079;box-shadow:none;border:0;padding:6px 0;border-radius:0}#navbar .navbar-link a:hover{color:#1248b8}#navbar .navbar-link a svg[style*=mask-image]{background-color:currentColor}#navbar .navbar-link a:focus-visible{outline:2px solid #1248b8;outline-offset:3px}#navbar #search-bar-entry{height:40px;border-radius:10px;background:#f8fafc}#navbar #topbar-cta-button a{min-height:36px;padding:7px 14px;color:#334155}#navbar #topbar-cta-button a>span{background:0 0;border:1px solid #d7dee8;border-radius:8px;box-shadow:none}#navbar #topbar-cta-button a .text-white{color:inherit}#navbar #topbar-cta-button a svg{display:none}#navbar #topbar-cta-button a:hover>span{background:#f4f7fb;border-color:#aebbd0}.dark #navbar #topbar-cta-button a,.dark #navbar .navbar-link a{color:#cbd5e1}.dark #navbar #search-bar-entry{background:#18202c}.dark #navbar #topbar-cta-button a>span{border-color:#475569}.dark #navbar #topbar-cta-button a:hover>span{background:#1e293b}@media (min-width:1024px){#navbar div:has(>a>.nav-logo){flex:0 0 auto}#navbar div:has(>#search-bar-entry){flex:1 1 360px;max-width:560px;min-width:120px;margin-left:auto}#navbar div:has(>nav[aria-label=Main]){flex:0 0 auto;margin-left:auto}#navbar nav[aria-label=Main]>ul{gap:20px}#navbar nav[aria-label=Main]>ul>:not([hidden])~:not([hidden]){margin-inline-start:0}#navbar div:has(>.nav-tabs){background:#f4f8ff;border-top:1px solid #eaf2ff;border-bottom:1px solid #e5efff}.dark #navbar div:has(>.nav-tabs){background:#141c2a;border-color:#263347}#content-container>div:has(>#content-area){padding-top:24px}#sidebar-content .pt-10{padding-top:24px}#sidebar-content div:has(>#navigation-items)>.sticky:first-child{height:24px}#content-side-layout{top:calc(var(--mintlify-slot-header-height, calc(4rem + var(--topbar-tabs-height, 0rem))) + var(--banner-height, 0px) + 24px)}}"}],"page":{"pagePath":"it/developers/deployment/algorithm-detection","slug":"/it/developers/deployment/algorithm-detection","pageMetadata":{"title":"Distribuire gli algoritmi di rilevamento e integrare i risultati","sidebarTitle":"Distribuzione degli algoritmi di rilevamento","description":"Distribuisci gli algoritmi di rilevamento delle persone, delle ubicazioni di stoccaggio e dei volumi, configura i parametri estrinseci e i parametri della fotocamera e recupera i risultati tramite TCP, UDP, HTTP o Modbus TCP.","href":"/it/developers/deployment/algorithm-detection"},"description":{"compiledSource":"\"use strict\";\nconst {jsx: _jsx} = arguments[0];\nconst {useMDXComponents: _provideComponents} = arguments[0];\nfunction _createMdxContent(props) {\n const _components = {\n p: \"p\",\n ..._provideComponents(),\n ...props.components\n };\n return _jsx(_components.p, {\n children: \"Distribuisci gli algoritmi di rilevamento delle persone, delle ubicazioni di stoccaggio e dei volumi, configura i parametri estrinseci e i parametri della fotocamera e recupera i risultati tramite TCP, UDP, HTTP o Modbus TCP.\"\n });\n}\nfunction MDXContent(props = {}) {\n const {wrapper: MDXLayout} = {\n ..._provideComponents(),\n ...props.components\n };\n return MDXLayout ? _jsx(MDXLayout, {\n ...props,\n children: _jsx(_createMdxContent, {\n ...props\n })\n }) : _createMdxContent(props);\n}\nreturn {\n default: MDXContent\n};\n","frontmatter":{},"scope":{}},"pageType":"default","mdx":{"mdxSource":{"compiledSource":"\"use strict\";const{Fragment:_Fragment,jsx:_jsx,jsxs:_jsxs}=arguments[0];const{useMDXComponents:_provideComponents}=arguments[0];function _createMdxContent(props){const _components={a:`a`,code:`code`,li:`li`,ol:`ol`,p:`p`,pre:`pre`,span:`span`,strong:`strong`,tbody:`tbody`,td:`td`,th:`th`,thead:`thead`,tr:`tr`,..._provideComponents(),...props.components},{CodeBlock,Heading,Info,Note,ParamField,ResponseField,Step,Steps,Tab,Table,Tabs,Warning}=_components;if(!CodeBlock)_missingMdxReference(`CodeBlock`,true);if(!Heading)_missingMdxReference(`Heading`,true);if(!Info)_missingMdxReference(`Info`,true);if(!Note)_missingMdxReference(`Note`,true);if(!ParamField)_missingMdxReference(`ParamField`,true);if(!ResponseField)_missingMdxReference(`ResponseField`,true);if(!Step)_missingMdxReference(`Step`,true);if(!Steps)_missingMdxReference(`Steps`,true);if(!Tab)_missingMdxReference(`Tab`,true);if(!Table)_missingMdxReference(`Table`,true);if(!Tabs)_missingMdxReference(`Tabs`,true);if(!Warning)_missingMdxReference(`Warning`,true);return _jsxs(_Fragment,{children:[_jsx(_components.p,{children:`Questa guida illustra la distribuzione, la calibrazione, la configurazione e l’integrazione dei risultati per gli algoritmi MRDVS di rilevamento delle persone, delle ubicazioni di stoccaggio e dei volumi. L’algoritmo viene eseguito sulla fotocamera; l’applicazione host dell’algoritmo viene usata per la configurazione, gli aggiornamenti e l’ispezione dei risultati.`}),`\n`,_jsx(Info,{children:_jsx(_components.p,{children:`Il firmware dell’algoritmo e l’applicazione host dell’algoritmo vengono forniti per ogni progetto. Prima di eseguire il flashing del firmware dell’algoritmo, verifica che la fotocamera esegua una versione del firmware MDS. Ottieni un pacchetto di installazione corrispondente al progetto e al modello della fotocamera.`})}),`\n`,_jsx(Heading,{level:`2`,id:`ambito-supportato`,children:`Ambito supportato`}),`\n`,_jsx(Heading,{level:`3`,id:`componenti-del-sistema`,children:`Componenti del sistema`}),`\n`,_jsxs(Table,{children:[_jsx(_components.thead,{children:_jsxs(_components.tr,{children:[_jsx(_components.th,{children:`Componente`}),_jsx(_components.th,{children:`Funzione`})]})}),_jsxs(_components.tbody,{children:[_jsxs(_components.tr,{children:[_jsx(_components.td,{children:`Fotocamera 3D`}),_jsx(_components.td,{children:`Acquisisce immagini RGB e nuvole di punti ed esegue l’algoritmo di rilevamento sulla fotocamera.`})]}),_jsxs(_components.tr,{children:[_jsx(_components.td,{children:`Applicazione host dell’algoritmo`}),_jsx(_components.td,{children:`Configura gli algoritmi, calibra i parametri estrinseci, visualizza i risultati e aggiorna il firmware dell’algoritmo.`})]}),_jsxs(_components.tr,{children:[_jsx(_components.td,{children:`PC industriale o sistema di livello superiore`}),_jsx(_components.td,{children:`Esegue l’applicazione host o legge i risultati tramite un’interfaccia di rete.`})]}),_jsxs(_components.tr,{children:[_jsx(_components.td,{children:`LiDAR`}),_jsxs(_components.td,{children:[_jsx(_components.code,{children:`mid360`}),`, usato per la configurazione della soluzione originale basata sul radar.`]})]})]})]}),`\n`,_jsx(Heading,{level:`3`,id:`algoritmi-e-fotocamere`,children:`Algoritmi e fotocamere`}),`\n`,_jsxs(Table,{children:[_jsx(_components.thead,{children:_jsxs(_components.tr,{children:[_jsx(_components.th,{children:`Algoritmo`}),_jsx(_components.th,{children:`Fotocamera supportata`})]})}),_jsxs(_components.tbody,{children:[_jsxs(_components.tr,{children:[_jsx(_components.td,{children:`Rilevamento persone`}),_jsx(_components.td,{children:`M4 Pro`})]}),_jsxs(_components.tr,{children:[_jsx(_components.td,{children:`Rilevamento ubicazioni di stoccaggio`}),_jsx(_components.td,{children:`S10 Pro`})]}),_jsxs(_components.tr,{children:[_jsx(_components.td,{children:`Rilevamento volumi`}),_jsx(_components.td,{children:`S10 e S10 Pro`})]})]})]}),`\n`,_jsxs(_components.p,{children:[`Per informazioni sul prodotto, consulta la `,_jsx(_components.a,{href:`/it/products/s-series/s10-overview`,children:`pagina del prodotto della fotocamera 3D S10`}),`.`]}),`\n`,_jsx(Heading,{level:`3`,id:`ambiente-dell’applicazione-host`,children:`Ambiente dell’applicazione host`}),`\n`,_jsxs(Table,{children:[_jsx(_components.thead,{children:_jsxs(_components.tr,{children:[_jsx(_components.th,{children:`Elemento`}),_jsx(_components.th,{children:`Configurazione consigliata`})]})}),_jsxs(_components.tbody,{children:[_jsxs(_components.tr,{children:[_jsx(_components.td,{children:`Sistema operativo`}),_jsx(_components.td,{children:`Windows 10 o versione successiva`})]}),_jsxs(_components.tr,{children:[_jsx(_components.td,{children:`CPU`}),_jsx(_components.td,{children:`Intel® Core™ i5 (7ª generazione) o versione successiva`})]}),_jsxs(_components.tr,{children:[_jsx(_components.td,{children:`Memoria`}),_jsx(_components.td,{children:`8 GB o più`})]}),_jsxs(_components.tr,{children:[_jsx(_components.td,{children:`GPU`}),_jsx(_components.td,{children:`Intel® UHD Graphics o una GPU integrata o discreta con prestazioni superiori`})]})]})]}),`\n`,_jsx(Heading,{level:`2`,id:`distribuzione-hardware-e-di-rete`,children:`Distribuzione hardware e di rete`}),`\n`,_jsx(Heading,{level:`3`,id:`installare-la-fotocamera`,children:`Installare la fotocamera`}),`\n`,_jsx(_components.p,{children:`Usa una staffa rigida per impedire movimenti o vibrazioni dopo l’installazione. Il rilevamento delle persone usa normalmente un’installazione orizzontale o un’installazione con un angolo non superiore a 30°.`}),`\n`,_jsx(Heading,{level:`3`,id:`collegare-i-dispositivi`,children:`Collegare i dispositivi`}),`\n`,_jsxs(Steps,{children:[_jsx(Step,{title:`Collega l'alimentazione e la rete`,children:_jsx(_components.p,{children:`Alimenta la fotocamera con un’alimentazione stabilizzata da 24 V CC. Usa un cavo Cat6A o Cat7 per collegare la fotocamera a uno switch gigabit o a un controller.`})}),_jsx(Step,{title:`Distribuisci più fotocamere`,children:_jsx(_components.p,{children:`Installa ogni fotocamera all’altezza e nella posizione specificate nel progetto CAD. Collega tutte le fotocamere tramite uno switch gigabit e verifica l’alimentazione e lo stato del collegamento di ciascuna.`})}),_jsx(Step,{title:`Prepara i target di test`,children:_jsx(_components.p,{children:`Posiziona le persone, i pallet o le merci da rilevare nel campo visivo della fotocamera prima di calibrare i parametri estrinseci e configurare le regioni.`})})]}),`\n`,_jsx(Heading,{level:`3`,id:`configurare-la-rete-dell’host`,children:`Configurare la rete dell’host`}),`\n`,_jsx(_components.p,{children:`Metti il computer host e la fotocamera sulla stessa sottorete. L’esempio originale usa il seguente schema:`}),`\n`,_jsxs(Table,{children:[_jsx(_components.thead,{children:_jsxs(_components.tr,{children:[_jsx(_components.th,{children:`Elemento`}),_jsx(_components.th,{children:`Esempio`})]})}),_jsxs(_components.tbody,{children:[_jsxs(_components.tr,{children:[_jsx(_components.td,{children:`Indirizzo IP dell’host`}),_jsx(_components.td,{\"data-numeric\":`true`,children:_jsx(_components.code,{children:`192.168.100.xxx`})})]}),_jsxs(_components.tr,{children:[_jsx(_components.td,{children:`Maschera di sottorete`}),_jsx(_components.td,{\"data-numeric\":`true`,children:_jsx(_components.code,{children:`255.255.255.0`})})]}),_jsxs(_components.tr,{children:[_jsx(_components.td,{children:`Gateway predefinito`}),_jsx(_components.td,{\"data-numeric\":`true`,children:_jsx(_components.code,{children:`192.168.100.1`})})]})]})]}),`\n`,_jsxs(Steps,{children:[_jsx(Step,{title:`Apri le impostazioni della scheda`,children:_jsxs(_components.p,{children:[`In Windows, apri `,_jsx(_components.strong,{children:`Pannello di controllo → Centro connessioni di rete e condivisione → Modifica impostazioni scheda`}),`, quindi seleziona la scheda Ethernet collegata alla fotocamera.`]})}),_jsx(Step,{title:`Configura IPv4`,children:_jsxs(_components.p,{children:[`Apri `,_jsx(_components.strong,{children:`Protocollo Internet versione 4 (TCP/IPv4)`}),`, seleziona `,_jsx(_components.strong,{children:`Usa il seguente indirizzo IP`}),` e inserisci un indirizzo statico non utilizzato nella sottorete della fotocamera.`]})}),_jsx(Step,{title:`Conferma la connessione`,children:_jsx(_components.p,{children:`Salva le impostazioni, conferma il collegamento gigabit e usa l’applicazione host per individuare o aprire la fotocamera.`})})]}),`\n`,_jsx(Warning,{children:_jsx(_components.p,{children:`Non lasciare il firewall disabilitato su una rete di produzione. Se l’applicazione host non riesce a connettersi, crea prima una regola per l’applicazione o la porta necessaria. Disabilita temporaneamente il firewall solo su una rete di debug attendibile, quindi ripristina la protezione.`})}),`\n`,_jsx(Heading,{level:`2`,id:`installare-e-aggiornare-il-software`,children:`Installare e aggiornare il software`}),`\n`,_jsx(Heading,{level:`3`,id:`installare-le-applicazioni-host`,children:`Installare le applicazioni host`}),`\n`,_jsxs(_components.ol,{children:[`\n`,_jsx(_components.li,{children:`Ottieni l’applicazione host della fotocamera dalla pagina dei download del software.`}),`\n`,_jsx(_components.li,{children:`Installa l’applicazione host della fotocamera al di fuori dell’unità di sistema.`}),`\n`,_jsxs(_components.li,{children:[`Copia i file dell’applicazione host dell’algoritmo forniti per il progetto nella cartella `,_jsx(_components.code,{children:`Tools`}),` all’interno della directory dell’applicazione host della fotocamera. Sostituisci i file con lo stesso nome, quindi fai doppio clic sull’eseguibile per avviarlo.`]}),`\n`]}),`\n`,_jsxs(_components.p,{children:[`Per aggiornare solo l’applicazione host dell’algoritmo, sostituisci il relativo file `,_jsx(_components.code,{children:`.exe`}),` con la versione fornita.`]}),`\n`,_jsx(Heading,{level:`3`,id:`aggiornare-il-firmware-dell’algoritmo`,children:`Aggiornare il firmware dell’algoritmo`}),`\n`,_jsx(Warning,{children:_jsx(_components.p,{children:`La fotocamera si riavvia durante il flashing. Non scollegare l’alimentazione o la rete e non chiudere l’applicazione host. Il pacchetto deve corrispondere al modello della fotocamera, alla versione del firmware MDS e all’algoritmo del progetto.`})}),`\n`,_jsxs(Tabs,{children:[_jsx(Tab,{title:`Applicazione host della fotocamera`,id:`applicazione-host-della-fotocamera`,children:_jsxs(_components.ol,{children:[`\n`,_jsxs(_components.li,{children:[`Avvia `,_jsx(_components.code,{children:`LxCameraViewer.exe`}),` e apri la fotocamera.`]}),`\n`,_jsxs(_components.li,{children:[`Seleziona `,_jsx(_components.strong,{children:`Strumenti di base → Impostazioni funzione → Aggiornamento firmware`}),`.`]}),`\n`,_jsxs(_components.li,{children:[`Scegli il file dell’algoritmo di rilevamento fornito e seleziona `,_jsx(_components.strong,{children:`Esegui`}),`.`]}),`\n`]})}),_jsx(Tab,{title:`Applicazione host dell'algoritmo`,id:`applicazione-host-dell-algoritmo`,children:_jsxs(_components.ol,{children:[`\n`,_jsx(_components.li,{children:`Seleziona la fotocamera target nell’elenco dei dispositivi.`}),`\n`,_jsxs(_components.li,{children:[`Seleziona `,_jsx(_components.strong,{children:`Aggiorna firmware`}),`, scegli il file dell’algoritmo di rilevamento e aprilo.`]}),`\n`,_jsx(_components.li,{children:`Attendi che la fotocamera ricompaia nell’elenco dei dispositivi.`}),`\n`]})})]}),`\n`,_jsx(_components.p,{children:`Quando la fotocamera ricompare dopo il riavvio, il flashing è completato. Uno sfondo verde della fotocamera nell’applicazione host dell’algoritmo indica che la fotocamera è connessa e che l’algoritmo è disponibile.`}),`\n`,_jsx(Heading,{level:`2`,id:`applicazione-host-dell’algoritmo`,children:`Applicazione host dell’algoritmo`}),`\n`,_jsx(Heading,{level:`3`,id:`avvio-e-stato`,children:`Avvio e stato`}),`\n`,_jsxs(_components.p,{children:[`Avvia `,_jsx(_components.code,{children:`LxApplicationViewer.exe`}),`. Un’icona verde nell’elenco dei dispositivi indica una fotocamera connessa. Seleziona un dispositivo per alternare la vista corrente tra la modalità RGB e quella della nuvola di punti. Gli utenti standard possono visualizzare i risultati; gli amministratori possono modificare i parametri della fotocamera e dell’algoritmo.`]}),`\n`,_jsx(Heading,{level:`3`,id:`strumenti-di-base`,children:`Strumenti di base`}),`\n`,_jsxs(Table,{children:[_jsx(_components.thead,{children:_jsxs(_components.tr,{children:[_jsx(_components.th,{children:`Funzione`}),_jsx(_components.th,{children:`Descrizione`})]})}),_jsxs(_components.tbody,{children:[_jsxs(_components.tr,{children:[_jsx(_components.td,{children:`Cambio utente`}),_jsx(_components.td,{children:`Cambia i livelli di autorizzazione. Gli amministratori possono configurare i parametri della fotocamera e dell’algoritmo.`})]}),_jsxs(_components.tr,{children:[_jsx(_components.td,{children:`Piano ideale`}),_jsx(_components.td,{children:`Mostra o nasconde il piano orizzontale di riferimento.`})]}),_jsxs(_components.tr,{children:[_jsx(_components.td,{children:`Piano estrinseco`}),_jsx(_components.td,{children:`Mostra o nasconde il terreno calcolato dalla calibrazione estrinseca.`})]}),_jsxs(_components.tr,{children:[_jsx(_components.td,{children:`Visualizzazione cache`}),_jsx(_components.td,{children:`Lascia invariato.`})]}),_jsxs(_components.tr,{children:[_jsx(_components.td,{children:`Visualizzazione algoritmo`}),_jsx(_components.td,{children:`Mostra l’algoritmo attualmente abilitato.`})]}),_jsxs(_components.tr,{children:[_jsx(_components.td,{children:`Esporta immagini salvate`}),_jsx(_components.td,{children:`Esporta le immagini salvate.`})]}),_jsxs(_components.tr,{children:[_jsx(_components.td,{children:`Riproduzione dello storico`}),_jsx(_components.td,{children:`Visualizza le immagini RGB e i log dei dati ToF.`})]}),_jsxs(_components.tr,{children:[_jsx(_components.td,{children:`Cambia algoritmo dell’applicazione`}),_jsxs(_components.td,{children:[`Scegli l’algoritmo da eseguire, quindi seleziona `,_jsx(_components.strong,{children:`Salva e invia`}),`.`]})]}),_jsxs(_components.tr,{children:[_jsx(_components.td,{children:`Visualizza risultati del rilevamento`}),_jsx(_components.td,{children:`Mostra l’output dell’algoritmo corrente.`})]})]})]}),`\n`,_jsx(Heading,{level:`3`,id:`barra-di-stato-e-riproduzione`,children:`Barra di stato e riproduzione`}),`\n`,_jsxs(Table,{children:[_jsx(_components.thead,{children:_jsxs(_components.tr,{children:[_jsx(_components.th,{children:`Funzione`}),_jsx(_components.th,{children:`Descrizione`})]})}),_jsxs(_components.tbody,{children:[_jsxs(_components.tr,{children:[_jsx(_components.td,{children:`RGB`}),_jsx(_components.td,{children:`Mostra l’immagine RGB.`})]}),_jsxs(_components.tr,{children:[_jsx(_components.td,{children:`Nuvola di punti`}),_jsx(_components.td,{children:`Mostra la nuvola di punti.`})]}),_jsxs(_components.tr,{children:[_jsx(_components.td,{children:`Arresta algoritmo`}),_jsx(_components.td,{children:`Arresta l’algoritmo corrente. Non si riavvia automaticamente finché la fotocamera non viene riaccesa.`})]}),_jsxs(_components.tr,{children:[_jsx(_components.td,{children:`Aggiorna firmware`}),_jsx(_components.td,{children:`Apre il flusso di lavoro per l’aggiornamento del firmware dell’algoritmo.`})]}),_jsxs(_components.tr,{children:[_jsx(_components.td,{children:`Riavvia fotocamera`}),_jsx(_components.td,{children:`Riavvia la fotocamera selezionata.`})]})]})]}),`\n`,_jsx(_components.p,{children:`Quando cambia lo stato, il software salva un fotogramma RGB e i dati della nuvola di punti. I dati di riproduzione non sono condivisi tra gli algoritmi. L’ora della riproduzione usa l’orologio interno della fotocamera, non l’ora di sistema del computer host.`}),`\n`,_jsx(_components.p,{children:`Se lo sfondo del dispositivo è giallo, oppure è verde ma l’immagine non si aggiorna, abilita l’aggiornamento automatico per riprendere l’acquisizione delle immagini.`}),`\n`,_jsx(Heading,{level:`2`,id:`calibrazione-estrinseca`,children:`Calibrazione estrinseca`}),`\n`,_jsx(Heading,{level:`3`,id:`configurazione-della-fotocamera`,children:`Configurazione della fotocamera`}),`\n`,_jsxs(Table,{children:[_jsx(_components.thead,{children:_jsxs(_components.tr,{children:[_jsx(_components.th,{children:`Configurazione`}),_jsx(_components.th,{children:`Descrizione`})]})}),_jsxs(_components.tbody,{children:[_jsxs(_components.tr,{children:[_jsx(_components.td,{children:`Nome fotocamera`}),_jsx(_components.td,{children:`Identifica una fotocamera in una distribuzione con più fotocamere.`})]}),_jsxs(_components.tr,{children:[_jsx(_components.td,{children:`Modalità simulazione`}),_jsx(_components.td,{children:`Funzione interna; lascia disabilitata.`})]}),_jsxs(_components.tr,{children:[_jsx(_components.td,{children:`Modalità salvataggio immagini`}),_jsx(_components.td,{children:`Salva i dati delle immagini dell’algoritmo sulla fotocamera.`})]}),_jsxs(_components.tr,{children:[_jsx(_components.td,{children:`Modalità acquisizione immagini`}),_jsxs(_components.td,{children:[_jsx(_components.code,{children:`MDS`}),` non occupa l’accesso alla fotocamera. `,_jsx(_components.code,{children:`SDK`}),` lo occupa; l’applicazione host non può aprire la fotocamera mentre l’algoritmo è in esecuzione.`]})]}),_jsxs(_components.tr,{children:[_jsxs(_components.td,{children:[_jsx(_components.code,{children:`x`}),`, `,_jsx(_components.code,{children:`y`}),`, `,_jsx(_components.code,{children:`z`})]}),_jsxs(_components.td,{children:[`Posizione estrinseca della fotocamera; `,_jsx(_components.code,{children:`z`}),` è l’altezza della fotocamera dal terreno.`]})]}),_jsxs(_components.tr,{children:[_jsxs(_components.td,{children:[_jsx(_components.code,{children:`roll`}),`, `,_jsx(_components.code,{children:`pitch`}),`, `,_jsx(_components.code,{children:`yaw`})]}),_jsx(_components.td,{children:`Angoli di orientamento estrinseco della fotocamera.`})]}),_jsxs(_components.tr,{children:[_jsx(_components.td,{children:`Piano ideale`}),_jsx(_components.td,{children:`Mantieni il valore predefinito.`})]}),_jsxs(_components.tr,{children:[_jsx(_components.td,{children:`Leggi configurazione dalla fotocamera`}),_jsx(_components.td,{children:`Legge la configurazione corrente della fotocamera.`})]}),_jsxs(_components.tr,{children:[_jsx(_components.td,{children:`Salva e invia`}),_jsx(_components.td,{children:`Scrive le modifiche sulla fotocamera. I parametri non salvati non hanno effetto.`})]}),_jsxs(_components.tr,{children:[_jsx(_components.td,{children:`Calibrazione estrinseca`}),_jsx(_components.td,{children:`Calibra l’altezza e l’orientamento della fotocamera.`})]})]})]}),`\n`,_jsxs(Tabs,{children:[_jsx(Tab,{title:`Installazione verticale`,id:`installazione-verticale`,children:_jsxs(_components.ol,{children:[`\n`,_jsxs(_components.li,{children:[`Apri `,_jsx(_components.strong,{children:`Configurazione della fotocamera`}),`. Prima della calibrazione, imposta `,_jsx(_components.code,{children:`x`}),`, `,_jsx(_components.code,{children:`y`}),`, `,_jsx(_components.code,{children:`z`}),`, `,_jsx(_components.code,{children:`roll`}),`, `,_jsx(_components.code,{children:`pitch`}),` e `,_jsx(_components.code,{children:`yaw`}),` su `,_jsx(_components.code,{children:`0`}),`, quindi seleziona `,_jsx(_components.strong,{children:`Salva e invia`}),`.`]}),`\n`,_jsxs(_components.li,{children:[`Seleziona `,_jsx(_components.strong,{children:`Calibrazione estrinseca`}),`. Al termine della calibrazione, verifica il risultato nel pannello dei parametri.`]}),`\n`]})}),_jsx(Tab,{title:`Installazione orizzontale`,id:`installazione-orizzontale`,children:_jsxs(_components.ol,{children:[`\n`,_jsxs(_components.li,{children:[`Apri `,_jsx(_components.strong,{children:`Configurazione della fotocamera`}),` e accedi alla pagina di calibrazione dei parametri.`]}),`\n`,_jsxs(_components.li,{children:[`Allinea il terreno della nuvola di punti al sistema di coordinate: gli assi `,_jsx(_components.code,{children:`X`}),` rosso e `,_jsx(_components.code,{children:`Y`}),` verde giacciono sul terreno, mentre l’asse `,_jsx(_components.code,{children:`Z`}),` blu è perpendicolare al terreno e punta verso l’alto.`]}),`\n`,_jsxs(_components.li,{children:[`Di solito regola prima solo `,_jsx(_components.code,{children:`roll`}),` e `,_jsx(_components.code,{children:`z`}),`; imposta gli altri valori su `,_jsx(_components.code,{children:`0`}),`. Dopo la verifica, seleziona `,_jsx(_components.strong,{children:`Salva e invia`}),`.`]}),`\n`]})})]}),`\n`,_jsx(Heading,{level:`2`,id:`riferimento-dei-parametri-dell’algoritmo`,children:`Riferimento dei parametri dell’algoritmo`}),`\n`,_jsxs(_components.p,{children:[`Seleziona `,_jsx(_components.strong,{children:`Salva e invia`}),` dopo aver modificato qualsiasi parametro dell’algoritmo. Mantieni i parametri del filtro sui valori predefiniti, a meno che un test sul posto non dimostri che è necessario modificarli.`]}),`\n`,_jsxs(Tabs,{children:[_jsxs(Tab,{title:`Rilevamento persone`,id:`rilevamento-persone`,children:[_jsxs(Table,{children:[_jsx(_components.thead,{children:_jsxs(_components.tr,{children:[_jsx(_components.th,{children:`Parametro`}),_jsx(_components.th,{children:`Descrizione`})]})}),_jsxs(_components.tbody,{children:[_jsxs(_components.tr,{children:[_jsx(_components.td,{children:`Versione algoritmo`}),_jsx(_components.td,{children:`Versione corrente dell’algoritmo.`})]}),_jsxs(_components.tr,{children:[_jsx(_components.td,{children:`Frequenza di rilevamento`}),_jsx(_components.td,{children:`Frequenza di aggiornamento delle immagini e dei risultati.`})]}),_jsxs(_components.tr,{children:[_jsx(_components.td,{children:`Filtro temporale`}),_jsxs(_components.td,{children:[`Con `,_jsx(_components.code,{children:`3`}),`, sono necessari tre risultati identici consecutivi prima che un risultato venga considerato valido.`]})]}),_jsxs(_components.tr,{children:[_jsx(_components.td,{children:`Dimensione kernel`}),_jsx(_components.td,{children:`Dimensione del kernel per le operazioni morfologiche 2D. Valori più grandi riducono i target ed espandono lo sfondo.`})]}),_jsxs(_components.tr,{children:[_jsx(_components.td,{children:`Soglia di distanza`}),_jsx(_components.td,{children:`Determina se i punti sono simili o appartengono alla stessa classe.`})]}),_jsxs(_components.tr,{children:[_jsx(_components.td,{children:`Numero minimo di punti`}),_jsx(_components.td,{children:`Numero minimo di punti della nuvola richiesto per il clustering semantico.`})]}),_jsxs(_components.tr,{children:[_jsx(_components.td,{children:`Numero minimo di punti non semantici`}),_jsx(_components.td,{children:`Numero minimo di punti della nuvola richiesto per il clustering non semantico.`})]}),_jsxs(_components.tr,{children:[_jsx(_components.td,{children:`Dimensione del vicinato`}),_jsx(_components.td,{children:`Definisce l’intervallo del vicinato dei punti e influisce sulla granularità del clustering.`})]}),_jsxs(_components.tr,{children:[_jsx(_components.td,{children:`Rilevamento della rotazione`}),_jsxs(_components.td,{children:[`Corrisponde alla direzione di installazione della fotocamera; usa l’orientamento con il logo rivolto verso il basso come riferimento `,_jsx(_components.code,{children:`0°`}),`.`]})]})]})]}),_jsxs(Table,{children:[_jsx(_components.thead,{children:_jsxs(_components.tr,{children:[_jsx(_components.th,{children:`Parametro della regione`}),_jsx(_components.th,{children:`Descrizione`})]})}),_jsxs(_components.tbody,{children:[_jsxs(_components.tr,{children:[_jsx(_components.td,{children:`Aggiungi / elimina regione`}),_jsx(_components.td,{children:`Crea o elimina una regione di rilevamento delle persone.`})]}),_jsxs(_components.tr,{children:[_jsx(_components.td,{children:`Riquadro corrente`}),_jsx(_components.td,{children:`Seleziona la regione di rilevamento attiva.`})]}),_jsxs(_components.tr,{children:[_jsxs(_components.td,{children:[_jsx(_components.code,{children:`X`}),`, `,_jsx(_components.code,{children:`Y`}),`, `,_jsx(_components.code,{children:`Z`}),` minimo / massimo`]}),_jsx(_components.td,{children:`Definisce i limiti 3D della regione.`})]}),_jsxs(_components.tr,{children:[_jsx(_components.td,{children:`ID`}),_jsx(_components.td,{children:`Nome della regione usato per distinguere più regioni.`})]}),_jsxs(_components.tr,{children:[_jsx(_components.td,{children:`Trascina per regolare la regione`}),_jsxs(_components.td,{children:[`Trascina con il pulsante sinistro del mouse lungo `,_jsx(_components.code,{children:`x`}),` e `,_jsx(_components.code,{children:`y`}),`; trascina con il pulsante destro lungo `,_jsx(_components.code,{children:`z`}),`.`]})]})]})]})]}),_jsxs(Tab,{title:`Rilevamento ubicazioni di stoccaggio`,id:`rilevamento-ubicazioni-di-stoccaggio`,children:[_jsxs(Table,{children:[_jsx(_components.thead,{children:_jsxs(_components.tr,{children:[_jsx(_components.th,{children:`Parametro`}),_jsx(_components.th,{children:`Descrizione`})]})}),_jsxs(_components.tbody,{children:[_jsxs(_components.tr,{children:[_jsx(_components.td,{children:`Versione algoritmo`}),_jsx(_components.td,{children:`Versione corrente dell’algoritmo.`})]}),_jsxs(_components.tr,{children:[_jsx(_components.td,{children:`Filtro AI`}),_jsx(_components.td,{children:`Segmentazione semantica; attualmente non disponibile.`})]}),_jsxs(_components.tr,{children:[_jsx(_components.td,{children:`Frequenza di rilevamento`}),_jsx(_components.td,{children:`Frequenza di aggiornamento dei risultati.`})]}),_jsxs(_components.tr,{children:[_jsx(_components.td,{children:`Angolo di allineamento`}),_jsx(_components.td,{children:`Offset angolare massimo consentito del carico quando è abilitato il controllo dell’allineamento.`})]}),_jsxs(_components.tr,{children:[_jsx(_components.td,{children:`Controllo dell’allineamento`}),_jsx(_components.td,{children:`Controlla l’offset angolare e lo stato dei limiti. Gli oggetti rilevati vengono mostrati con riquadri del volume gialli.`})]}),_jsxs(_components.tr,{children:[_jsx(_components.td,{children:`Filtro temporale`}),_jsx(_components.td,{children:`Emette uno stato valido solo dopo diversi risultati consecutivi coerenti.`})]}),_jsxs(_components.tr,{children:[_jsx(_components.td,{children:`Numero minimo di punti`}),_jsx(_components.td,{children:`Gli oggetti con meno punti di questo valore vengono ignorati.`})]})]})]}),_jsxs(Table,{children:[_jsx(_components.thead,{children:_jsxs(_components.tr,{children:[_jsx(_components.th,{children:`Modalità regione`}),_jsx(_components.th,{children:`Configurazione`})]})}),_jsxs(_components.tbody,{children:[_jsxs(_components.tr,{children:[_jsx(_components.td,{children:`RGB 2D`}),_jsxs(_components.td,{children:[`Usa i pixel `,_jsx(_components.code,{children:`X`}),` e `,_jsx(_components.code,{children:`Y`}),` minimo e massimo per definire l’ubicazione di stoccaggio. Sono necessarie la modalità semantica e un modello semantico.`]})]}),_jsxs(_components.tr,{children:[_jsx(_components.td,{children:`Nuvola di punti 3D`}),_jsxs(_components.td,{children:[`Usa `,_jsx(_components.code,{children:`X`}),`, `,_jsx(_components.code,{children:`Y`}),` e `,_jsx(_components.code,{children:`Z`}),` minimo e massimo per definire l’ubicazione. Trascina con il pulsante sinistro del mouse lungo `,_jsx(_components.code,{children:`x`}),` e `,_jsx(_components.code,{children:`y`}),`, oppure con il pulsante destro lungo `,_jsx(_components.code,{children:`z`}),`.`]})]})]})]}),_jsxs(Table,{children:[_jsx(_components.thead,{children:_jsxs(_components.tr,{children:[_jsx(_components.th,{children:`Funzione avanzata`}),_jsx(_components.th,{children:`Descrizione`})]})}),_jsxs(_components.tbody,{children:[_jsxs(_components.tr,{children:[_jsx(_components.td,{children:`Copia riquadro corrente`}),_jsx(_components.td,{children:`Copia la regione di stoccaggio attiva.`})]}),_jsxs(_components.tr,{children:[_jsx(_components.td,{children:`Direzione, spaziatura, conteggio`}),_jsxs(_components.td,{children:[`Definisce copie equidistanti lungo l’asse `,_jsx(_components.code,{children:`X`}),`, `,_jsx(_components.code,{children:`Y`}),` o `,_jsx(_components.code,{children:`Z`}),`.`]})]}),_jsxs(_components.tr,{children:[_jsx(_components.td,{children:`Esegui`}),_jsx(_components.td,{children:`Genera più regioni dalla configurazione.`})]}),_jsxs(_components.tr,{children:[_jsx(_components.td,{children:`Calibrazione codice QR`}),_jsxs(_components.td,{children:[`Inserisci la larghezza e la lunghezza dell’ubicazione, `,_jsx(_components.code,{children:`Z_MIN`}),` e `,_jsx(_components.code,{children:`Z_MAX`}),`, quindi calibra con un codice QR.`]})]})]})]})]}),_jsxs(Tab,{title:`Rilevamento volumi`,id:`rilevamento-volumi`,children:[_jsxs(Table,{children:[_jsx(_components.thead,{children:_jsxs(_components.tr,{children:[_jsx(_components.th,{children:`Parametro`}),_jsx(_components.th,{children:`Descrizione`})]})}),_jsxs(_components.tbody,{children:[_jsxs(_components.tr,{children:[_jsx(_components.td,{children:`Versione algoritmo`}),_jsx(_components.td,{children:`Versione corrente dell’algoritmo.`})]}),_jsxs(_components.tr,{children:[_jsx(_components.td,{children:`Modalità trigger`}),_jsx(_components.td,{children:`Se abilitata, acquisisce un’immagine e un risultato per ogni trigger.`})]}),_jsxs(_components.tr,{children:[_jsx(_components.td,{children:`Rilevamento verso l’alto`}),_jsx(_components.td,{children:`Rileva usando il sistema di coordinate inverso della fotocamera.`})]}),_jsxs(_components.tr,{children:[_jsx(_components.td,{children:`Frequenza di rilevamento`}),_jsx(_components.td,{children:`Frequenza di aggiornamento delle immagini e dei risultati.`})]}),_jsxs(_components.tr,{children:[_jsx(_components.td,{children:`Distanza del piano di rilevamento`}),_jsx(_components.td,{children:`Posizione di riferimento della superficie inferiore dell’oggetto, in mm.`})]}),_jsxs(_components.tr,{children:[_jsx(_components.td,{children:`Conteggio vicinato / soglia di distanza`}),_jsx(_components.td,{children:`Parametri del filtro; nella maggior parte delle distribuzioni mantieni i valori predefiniti.`})]}),_jsxs(_components.tr,{children:[_jsx(_components.td,{children:`Soglia del filtro del vettore normale`}),_jsxs(_components.td,{children:[`Filtra i piani inclinati della nuvola di punti. La raccomandazione originale è `,_jsx(_components.code,{children:`60`}),`.`]})]}),_jsxs(_components.tr,{children:[_jsx(_components.td,{children:`Soglia di distanza del vettore normale`}),_jsxs(_components.td,{children:[`Parametro del filtro. L’intervallo consigliato originale è `,_jsx(_components.code,{children:`20–30`}),`.`]})]}),_jsxs(_components.tr,{children:[_jsx(_components.td,{children:`Numero minimo di punti`}),_jsx(_components.td,{children:`Gli oggetti con meno punti di questo valore vengono ignorati.`})]}),_jsxs(_components.tr,{children:[_jsxs(_components.td,{children:[_jsx(_components.code,{children:`X`}),`, `,_jsx(_components.code,{children:`Y`}),`, `,_jsx(_components.code,{children:`Z`}),` minimo`]}),_jsx(_components.td,{children:`Soglie minime di lunghezza, larghezza e altezza, in mm.`})]})]})]}),_jsxs(Table,{children:[_jsx(_components.thead,{children:_jsxs(_components.tr,{children:[_jsx(_components.th,{children:`Parametro della regione`}),_jsx(_components.th,{children:`Descrizione`})]})}),_jsx(_components.tbody,{children:_jsxs(_components.tr,{children:[_jsxs(_components.td,{children:[_jsx(_components.code,{children:`X`}),`, `,_jsx(_components.code,{children:`Y`}),`, `,_jsx(_components.code,{children:`Z`}),` minimo / massimo`]}),_jsx(_components.td,{children:`Definisce i limiti 3D della regione di rilevamento dei volumi.`})]})})]})]})]}),`\n`,_jsx(Heading,{level:`2`,id:`distribuire-un-algoritmo`,children:`Distribuire un algoritmo`}),`\n`,_jsx(_components.p,{children:`Passa alla modalità nuvola di punti e scorri sull’area dell’immagine per visualizzare i dati della nuvola di punti.`}),`\n`,_jsx(Heading,{level:`3`,id:`rilevamento-persone`,children:`Rilevamento persone`}),`\n`,_jsxs(Steps,{children:[_jsx(Step,{title:`Calibra un'installazione orizzontale`,children:_jsxs(_components.p,{children:[`Allinea gli assi `,_jsx(_components.code,{children:`X`}),` e `,_jsx(_components.code,{children:`Y`}),` alla nuvola di punti del terreno. L’asse `,_jsx(_components.code,{children:`Z`}),` deve essere perpendicolare al terreno e puntare verso l’alto.`]})}),_jsx(Step,{title:`Imposta i parametri globali`,children:_jsxs(_components.p,{children:[`Apri `,_jsx(_components.strong,{children:`Rilevamento persone`}),`. Di solito è necessario impostare solo `,_jsx(_components.strong,{children:`Rilevamento della rotazione`}),`. La rotazione oraria della fotocamera supporta `,_jsx(_components.code,{children:`0°`}),`, `,_jsx(_components.code,{children:`90°`}),`, `,_jsx(_components.code,{children:`180°`}),` e `,_jsx(_components.code,{children:`270°`}),`.`]})}),_jsx(Step,{title:`Crea la regione di rilevamento`,children:_jsxs(_components.p,{children:[`Seleziona `,_jsx(_components.strong,{children:`Aggiungi regione di rilevamento`}),`, imposta `,_jsx(_components.code,{children:`X`}),`, `,_jsx(_components.code,{children:`Y`}),` e `,_jsx(_components.code,{children:`Z`}),` minimo e massimo e sposta la regione sul target. L’esempio originale usa una regione di `,_jsx(_components.code,{children:`1000 × 1000 × 2000 mm`}),`.`]})}),_jsx(Step,{title:`Salva e verifica`,children:_jsxs(_components.p,{children:[`Seleziona `,_jsx(_components.strong,{children:`Salva e invia`}),`, esegui un test facendo attraversare la regione a una persona e verifica il risultato nella barra di stato o nella riproduzione dello storico.`]})})]}),`\n`,_jsxs(Table,{children:[_jsx(_components.thead,{children:_jsxs(_components.tr,{children:[_jsx(_components.th,{children:`Regola di corrispondenza`}),_jsx(_components.th,{children:`Nessuna persona`}),_jsx(_components.th,{children:`Persona`}),_jsx(_components.th,{children:`Ostacolo`}),_jsx(_components.th,{children:`Persona e ostacolo`})]})}),_jsxs(_components.tbody,{children:[_jsxs(_components.tr,{children:[_jsx(_components.td,{children:`Solo profondità`}),_jsx(_components.td,{\"data-numeric\":`true`,children:_jsx(_components.code,{children:`0`})}),_jsx(_components.td,{\"data-numeric\":`true`,children:_jsx(_components.code,{children:`2`})}),_jsx(_components.td,{\"data-numeric\":`true`,children:_jsx(_components.code,{children:`2`})}),_jsx(_components.td,{\"data-numeric\":`true`,children:_jsx(_components.code,{children:`2`})})]}),_jsxs(_components.tr,{children:[_jsx(_components.td,{children:`Semantica più profondità`}),_jsx(_components.td,{\"data-numeric\":`true`,children:_jsx(_components.code,{children:`0`})}),_jsx(_components.td,{\"data-numeric\":`true`,children:_jsx(_components.code,{children:`1`})}),_jsx(_components.td,{\"data-numeric\":`true`,children:_jsx(_components.code,{children:`0`})}),_jsx(_components.td,{\"data-numeric\":`true`,children:_jsx(_components.code,{children:`1`})})]})]})]}),`\n`,_jsx(_components.p,{children:`La modalità solo profondità segnala ogni oggetto nella regione. La modalità semantica più profondità segnala solo i cluster classificati come persone.`}),`\n`,_jsx(Heading,{level:`3`,id:`rilevamento-ubicazioni-di-stoccaggio`,children:`Rilevamento ubicazioni di stoccaggio`}),`\n`,_jsxs(Steps,{children:[_jsx(Step,{title:`Calibra la fotocamera`,children:_jsxs(_components.p,{children:[`Segui la procedura di calibrazione estrinseca. Allinea `,_jsx(_components.code,{children:`X`}),` e `,_jsx(_components.code,{children:`Y`}),` al terreno e mantieni `,_jsx(_components.code,{children:`Z`}),` perpendicolare e rivolto verso l’alto.`]})}),_jsx(Step,{title:`Configura i parametri globali`,children:_jsxs(_components.p,{children:[`Imposta `,_jsx(_components.strong,{children:`Controllo dell’allineamento`}),`, `,_jsx(_components.strong,{children:`Angolo di allineamento`}),` e `,_jsx(_components.strong,{children:`Numero minimo di punti`}),` per il sito. Abilita il controllo dell’allineamento quando il carico deve essere posizionato con un angolo definito.`]})}),_jsx(Step,{title:`Crea le ubicazioni di stoccaggio`,children:_jsxs(_components.p,{children:[`In modalità nuvola di punti, seleziona `,_jsx(_components.strong,{children:`Aggiungi ubicazione di stoccaggio`}),`, passa alla vista dall’alto e premi `,_jsx(_components.code,{children:`X`}),` per avviare o interrompere il disegno. Trascina il rettangolo sul pallet e regola i limiti `,_jsx(_components.code,{children:`X`}),`, `,_jsx(_components.code,{children:`Y`}),` e `,_jsx(_components.code,{children:`Z`}),`. Premi di nuovo `,_jsx(_components.code,{children:`X`}),` per uscire dalla modalità di disegno.`]})}),_jsx(Step,{title:`Salva e verifica`,children:_jsxs(_components.p,{children:[`Seleziona `,_jsx(_components.strong,{children:`Salva e invia`}),`. Configura le ubicazioni in modalità RGB 2D o nuvola di punti 3D e controlla `,_jsx(_components.code,{children:`Result`}),` nella barra di stato.`]})})]}),`\n`,_jsxs(Table,{children:[_jsx(_components.thead,{children:_jsxs(_components.tr,{children:[_jsx(_components.th,{children:`Stato dell’ubicazione di stoccaggio`}),_jsx(_components.th,{children:_jsx(_components.code,{children:`Result`})})]})}),_jsxs(_components.tbody,{children:[_jsxs(_components.tr,{children:[_jsx(_components.td,{children:`Vuota`}),_jsx(_components.td,{\"data-numeric\":`true`,children:_jsx(_components.code,{children:`0`})})]}),_jsxs(_components.tr,{children:[_jsx(_components.td,{children:`Occupata, oppure occupata e allineata`}),_jsx(_components.td,{\"data-numeric\":`true`,children:_jsx(_components.code,{children:`1`})})]}),_jsxs(_components.tr,{children:[_jsx(_components.td,{children:`Occupata con un angolo oltre la soglia di allineamento`}),_jsx(_components.td,{\"data-numeric\":`true`,children:_jsx(_components.code,{children:`2`})})]}),_jsxs(_components.tr,{children:[_jsx(_components.td,{children:`Occupata e al di fuori dei limiti dell’ubicazione`}),_jsx(_components.td,{\"data-numeric\":`true`,children:_jsx(_components.code,{children:`3`})})]})]})]}),`\n`,_jsxs(_components.p,{children:[`Per una disposizione regolare, usa `,_jsx(_components.strong,{children:`Copia riquadro corrente`}),` per creare ubicazioni con una direzione e una spaziatura fisse. Se è necessaria la verifica tramite codice QR, usa `,_jsx(_components.strong,{children:`Calibrazione codice QR`}),` per configurare le dimensioni dell’ubicazione e l’intervallo di profondità.`]}),`\n`,_jsx(Heading,{level:`3`,id:`rilevamento-volumi`,children:`Rilevamento volumi`}),`\n`,_jsxs(Steps,{children:[_jsx(Step,{title:`Calibra un'installazione verticale`,children:_jsxs(_components.p,{children:[`Il rilevamento dei volumi procede dall’alto verso il basso. Dopo la calibrazione, l’asse `,_jsx(_components.code,{children:`Z`}),` punta verso il basso e il piano `,_jsx(_components.code,{children:`X`}),`/`,_jsx(_components.code,{children:`Y`}),` è parallelo al terreno.`]})}),_jsx(Step,{title:`Imposta il piano di rilevamento`,children:_jsx(_components.p,{children:`Per le merci posizionate direttamente sul pavimento, imposta il piano di rilevamento all’altezza del pavimento. Per misurare solo le merci su un pallet, allinea il piano alla nuvola di punti del pallet.`})}),_jsx(Step,{title:`Imposta le dimensioni minime e la regione`,children:_jsxs(_components.p,{children:[`Imposta i valori minimi `,_jsx(_components.code,{children:`X`}),`, `,_jsx(_components.code,{children:`Y`}),` e `,_jsx(_components.code,{children:`Z`}),` per filtrare i target piccoli. Quindi imposta i limiti della regione in base al piano di rilevamento e alle dimensioni del carico.`]})}),_jsx(Step,{title:`Salva e verifica`,children:_jsxs(_components.p,{children:[`Seleziona `,_jsx(_components.strong,{children:`Salva e invia`}),`, posiziona uno o più oggetti nella regione e verifica la lunghezza, la larghezza, l’altezza e il conteggio restituiti.`]})})]}),`\n`,_jsxs(_components.p,{children:[`Per usare l’acquisizione con trigger singolo, abilita `,_jsx(_components.strong,{children:`Modalità trigger`}),` in `,_jsx(_components.strong,{children:`Rilevamento volumi`}),` e seleziona `,_jsx(_components.strong,{children:`Salva e invia`}),`. Quindi seleziona `,_jsx(_components.strong,{children:`Trigger singolo`}),` in `,_jsx(_components.strong,{children:`Strumenti di base`}),` oppure invia `,_jsx(_components.code,{children:`TM_TRIGGER`}),` tramite TCP o UDP.`]}),`\n`,_jsx(Heading,{level:`2`,id:`interfacce-di-comunicazione`,children:`Interfacce di comunicazione`}),`\n`,_jsx(Note,{children:_jsx(_components.p,{children:`L’indirizzo IP negli esempi è puramente illustrativo. Sostituiscilo con l’indirizzo della fotocamera sul sito, quindi verifica la rete, lo stato dell’algoritmo e il formato dei risultati prima di eseguire l’integrazione con un sistema di livello superiore.`})}),`\n`,_jsx(Heading,{level:`3`,id:`metodi-di-trasporto`,children:`Metodi di trasporto`}),`\n`,_jsxs(Table,{children:[_jsx(_components.thead,{children:_jsxs(_components.tr,{children:[_jsx(_components.th,{children:`Protocollo`}),_jsx(_components.th,{children:`Porta`}),_jsx(_components.th,{children:`Richiesta`}),_jsx(_components.th,{children:`Uso`})]})}),_jsxs(_components.tbody,{children:[_jsxs(_components.tr,{children:[_jsx(_components.td,{children:`TCP`}),_jsx(_components.td,{\"data-numeric\":`true`,children:_jsx(_components.code,{children:`14951`})}),_jsx(_components.td,{children:_jsx(_components.code,{children:`RESULT_UPDATE`})}),_jsx(_components.td,{children:`Ottiene il risultato corrente dell’algoritmo.`})]}),_jsxs(_components.tr,{children:[_jsx(_components.td,{children:`UDP`}),_jsx(_components.td,{\"data-numeric\":`true`,children:_jsx(_components.code,{children:`14950`})}),_jsx(_components.td,{children:_jsx(_components.code,{children:`RESULT_UPDATE`})}),_jsx(_components.td,{children:`Ottiene il risultato corrente dell’algoritmo.`})]}),_jsxs(_components.tr,{children:[_jsx(_components.td,{children:`HTTP`}),_jsx(_components.td,{\"data-numeric\":`true`,children:_jsx(_components.code,{children:`14952`})}),_jsx(_components.td,{children:_jsx(_components.code,{children:`RESULT_UPDATE`})}),_jsx(_components.td,{children:`Ottiene il risultato dell’algoritmo come JSON.`})]}),_jsxs(_components.tr,{children:[_jsx(_components.td,{children:`TCP / UDP`}),_jsx(_components.td,{children:`Porta dei risultati`}),_jsx(_components.td,{children:_jsx(_components.code,{children:`TM_TRIGGER`})}),_jsx(_components.td,{children:`Esegue un rilevamento dei volumi con un trigger e restituisce il risultato.`})]}),_jsxs(_components.tr,{children:[_jsx(_components.td,{children:`Modbus TCP`}),_jsx(_components.td,{\"data-numeric\":`true`,children:_jsx(_components.code,{children:`16502`})}),_jsx(_components.td,{children:`Leggi registri di mantenimento`}),_jsx(_components.td,{children:`Legge lo stato delle ubicazioni di stoccaggio.`})]})]})]}),`\n`,_jsx(Heading,{level:`3`,id:`richiesta-del-risultato-http`,children:`Richiesta del risultato HTTP`}),`\n`,_jsx(_components.p,{children:`Il sistema di livello superiore invia una richiesta di risultato all’endpoint di visione, che restituisce una stringa JSON. Usa nell’applicazione client HTTP le intestazioni della richiesta fornite per il progetto e il seguente corpo della richiesta.`}),`\n`,_jsx(ParamField,{body:`command`,default:`RESULT_UPDATE`,type:`string`,required:true,id:`param-command`,children:_jsx(_components.p,{children:`Attiva la restituzione del risultato corrente dell’algoritmo da parte della fotocamera.`})}),`\n`,_jsx(Heading,{level:`3`,id:`campi-comuni-della-risposta`,children:`Campi comuni della risposta`}),`\n`,_jsx(ResponseField,{name:`IP`,type:`string`,required:true,id:`param-ip`,children:_jsx(_components.p,{children:`Indirizzo IP della fotocamera che ha prodotto i dati.`})}),`\n`,_jsx(ResponseField,{name:`nick_name`,type:`string`,required:true,id:`param-nick-name`,children:_jsx(_components.p,{children:`Nome della fotocamera; modificalo nella configurazione della fotocamera.`})}),`\n`,_jsx(ResponseField,{name:`ret_code`,type:`integer`,required:true,id:`param-ret-code`,children:_jsxs(_components.p,{children:[`Codice restituito; `,_jsx(_components.code,{children:`0`}),` indica il successo.`]})}),`\n`,_jsxs(Tabs,{children:[_jsxs(Tab,{title:`Rilevamento persone (SG)`,id:`rilevamento-persone-sg`,children:[_jsx(ResponseField,{name:`SG`,type:`object`,required:true,id:`param-sg`,children:_jsxs(_components.p,{children:[`Oggetto di stato indicizzato per ID della regione di rilevamento: `,_jsx(_components.code,{children:`0`}),` indica nessun target, `,_jsx(_components.code,{children:`1`}),` indica che è stata rilevata una persona e `,_jsx(_components.code,{children:`2`}),` indica che un oggetto è stato rilevato solo dalla regola di profondità.`]})}),_jsx(ResponseField,{name:`__object_details`,type:`string[]`,id:`param-object-details`,children:_jsx(_components.p,{children:`Dettagli del cluster. Ogni elemento è una stringa JSON che deve essere deserializzata nuovamente.`})}),_jsx(ResponseField,{name:`SG_DATA_TIME`,type:`string`,id:`param-sg-data-time`,children:_jsx(_components.p,{children:`Timestamp dei dati del rilevamento persone.`})}),_jsx(ResponseField,{name:`SG_RES_TIME`,type:`string`,id:`param-sg-res-time`,children:_jsx(_components.p,{children:`Timestamp del risultato del rilevamento persone.`})}),_jsxs(_components.p,{children:[`I dettagli del cluster includono `,_jsx(_components.code,{children:`rbx2d`}),`, `,_jsx(_components.code,{children:`rby2d`}),`, `,_jsx(_components.code,{children:`tlx2d`}),` e `,_jsx(_components.code,{children:`tly2d`}),` (coordinate del riquadro 2D), `,_jsx(_components.code,{children:`semantic_index`}),`, `,_jsx(_components.code,{children:`traceID`}),` e `,_jsx(_components.code,{children:`x_min`}),`, `,_jsx(_components.code,{children:`x_max`}),`, `,_jsx(_components.code,{children:`y_min`}),`, `,_jsx(_components.code,{children:`y_max`}),`, `,_jsx(_components.code,{children:`z_min`}),` e `,_jsx(_components.code,{children:`z_max`}),` (limiti del riquadro 3D).`]})]}),_jsxs(Tab,{title:`Rilevamento ubicazioni di stoccaggio (SS)`,id:`rilevamento-ubicazioni-di-stoccaggio-ss`,children:[_jsx(ResponseField,{name:`SS`,type:`object`,required:true,id:`param-ss`,children:_jsxs(_components.p,{children:[`Oggetto di stato indicizzato per ID dell’ubicazione: `,_jsx(_components.code,{children:`0`}),` vuota, `,_jsx(_components.code,{children:`1`}),` occupata, `,_jsx(_components.code,{children:`2`}),` occupata con un offset angolare e `,_jsx(_components.code,{children:`3`}),` occupata e fuori dai limiti.`]})}),_jsx(ResponseField,{name:`X__detail__info`,type:`number[]`,id:`param-x-detail-info`,children:_jsxs(_components.p,{children:[`Dettagli dell’ubicazione `,_jsx(_components.code,{children:`X`}),`: centro `,_jsx(_components.code,{children:`x`}),`, `,_jsx(_components.code,{children:`y`}),` e `,_jsx(_components.code,{children:`z`}),`, lunghezza, larghezza, altezza e offset angolare rispetto al riquadro di delimitazione. Un’ubicazione creata in 2D restituisce tutti valori `,_jsx(_components.code,{children:`-1`}),`.`]})}),_jsx(ResponseField,{name:`SS_DATA_TIME`,type:`string`,id:`param-ss-data-time`,children:_jsx(_components.p,{children:`Timestamp dei dati dell’ubicazione di stoccaggio.`})}),_jsx(ResponseField,{name:`SS_RES_TIME`,type:`string`,id:`param-ss-res-time`,children:_jsx(_components.p,{children:`Timestamp del risultato dell’ubicazione di stoccaggio.`})})]}),_jsxs(Tab,{title:`Rilevamento volumi (TM)`,id:`rilevamento-volumi-tm`,children:[_jsx(ResponseField,{name:`TM`,type:`object[]`,required:true,id:`param-tm`,children:_jsx(_components.p,{children:`Array di riquadri del volume completi nella regione di rilevamento.`})}),_jsx(ResponseField,{name:`angle`,type:`number`,id:`param-angle`,children:_jsx(_components.p,{children:`Offset angolare del riquadro del volume.`})}),_jsx(ResponseField,{name:`cx`,type:`number`,id:`param-cx`,children:_jsxs(_components.p,{children:[`Coordinata `,_jsx(_components.code,{children:`x`}),` del centro del riquadro del volume.`]})}),_jsx(ResponseField,{name:`cy`,type:`number`,id:`param-cy`,children:_jsxs(_components.p,{children:[`Coordinata `,_jsx(_components.code,{children:`y`}),` del centro del riquadro del volume.`]})}),_jsx(ResponseField,{name:`cz`,type:`number`,id:`param-cz`,children:_jsxs(_components.p,{children:[`Coordinata `,_jsx(_components.code,{children:`z`}),` del centro del riquadro del volume.`]})}),_jsx(ResponseField,{name:`length`,type:`number`,id:`param-length`,children:_jsx(_components.p,{children:`Lunghezza dell’oggetto.`})}),_jsx(ResponseField,{name:`width`,type:`number`,id:`param-width`,children:_jsx(_components.p,{children:`Larghezza dell’oggetto.`})}),_jsx(ResponseField,{name:`height`,type:`number`,id:`param-height`,children:_jsx(_components.p,{children:`Altezza dell’oggetto.`})}),_jsx(ResponseField,{name:`type`,type:`string`,id:`param-type`,children:_jsx(_components.p,{children:`Tipo semantico.`})}),_jsx(ResponseField,{name:`valid`,type:`boolean`,id:`param-valid`,children:_jsx(_components.p,{children:`Indica se il risultato è valido.`})}),_jsx(ResponseField,{name:`TM_DATA_TIME`,type:`string`,id:`param-tm-data-time`,children:_jsx(_components.p,{children:`Timestamp dei dati del rilevamento volumi.`})}),_jsx(ResponseField,{name:`TM_RES_TIME`,type:`string`,id:`param-tm-res-time`,children:_jsx(_components.p,{children:`Timestamp del risultato del rilevamento volumi.`})})]})]}),`\n`,_jsx(Heading,{level:`3`,id:`esempio-di-risposta-del-rilevamento-persone`,children:`Esempio di risposta del rilevamento persone`}),`\n`,_jsx(CodeBlock,{filename:``,numberOfLines:`12`,language:`json`,children:_jsx(_components.pre,{className:`shiki shiki-themes github-light-default dark-plus`,style:{backgroundColor:`#ffffff`,\"--shiki-dark-bg\":`#0B0C0E`,color:`#1f2328`,\"--shiki-dark\":`#D4D4D4`},language:`json`,children:_jsxs(_components.code,{language:`json`,numberOfLines:`12`,children:[_jsx(_components.span,{className:`line`,children:_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#D4D4D4`},children:`{`})}),`\n`,_jsxs(_components.span,{className:`line`,children:[_jsx(_components.span,{style:{color:`#116329`,\"--shiki-dark\":`#9CDCFE`},children:` \"IP\"`}),_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#D4D4D4`},children:`: `}),_jsx(_components.span,{style:{color:`#0A3069`,\"--shiki-dark\":`#CE9178`},children:`\"192.168.100.83\"`}),_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#D4D4D4`},children:`,`})]}),`\n`,_jsxs(_components.span,{className:`line`,children:[_jsx(_components.span,{style:{color:`#116329`,\"--shiki-dark\":`#9CDCFE`},children:` \"SG\"`}),_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#D4D4D4`},children:`: {`})]}),`\n`,_jsxs(_components.span,{className:`line`,children:[_jsx(_components.span,{style:{color:`#116329`,\"--shiki-dark\":`#9CDCFE`},children:` \"1\"`}),_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#D4D4D4`},children:`: `}),_jsx(_components.span,{style:{color:`#0550AE`,\"--shiki-dark\":`#B5CEA8`},children:`1`}),_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#D4D4D4`},children:`,`})]}),`\n`,_jsxs(_components.span,{className:`line`,children:[_jsx(_components.span,{style:{color:`#116329`,\"--shiki-dark\":`#9CDCFE`},children:` \"2\"`}),_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#D4D4D4`},children:`: `}),_jsx(_components.span,{style:{color:`#0550AE`,\"--shiki-dark\":`#B5CEA8`},children:`0`}),_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#D4D4D4`},children:`,`})]}),`\n`,_jsxs(_components.span,{className:`line`,children:[_jsx(_components.span,{style:{color:`#116329`,\"--shiki-dark\":`#9CDCFE`},children:` \"__object_details\"`}),_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#D4D4D4`},children:`: []`})]}),`\n`,_jsx(_components.span,{className:`line`,children:_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#D4D4D4`},children:` },`})}),`\n`,_jsxs(_components.span,{className:`line`,children:[_jsx(_components.span,{style:{color:`#116329`,\"--shiki-dark\":`#9CDCFE`},children:` \"SG_DATA_TIME\"`}),_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#D4D4D4`},children:`: `}),_jsx(_components.span,{style:{color:`#0A3069`,\"--shiki-dark\":`#CE9178`},children:`\"2023_03_02_21_52_11.408\"`}),_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#D4D4D4`},children:`,`})]}),`\n`,_jsxs(_components.span,{className:`line`,children:[_jsx(_components.span,{style:{color:`#116329`,\"--shiki-dark\":`#9CDCFE`},children:` \"SG_RES_TIME\"`}),_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#D4D4D4`},children:`: `}),_jsx(_components.span,{style:{color:`#0A3069`,\"--shiki-dark\":`#CE9178`},children:`\"2023_03_02_21_52_11.689\"`}),_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#D4D4D4`},children:`,`})]}),`\n`,_jsxs(_components.span,{className:`line`,children:[_jsx(_components.span,{style:{color:`#116329`,\"--shiki-dark\":`#9CDCFE`},children:` \"nick_name\"`}),_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#D4D4D4`},children:`: `}),_jsx(_components.span,{style:{color:`#0A3069`,\"--shiki-dark\":`#CE9178`},children:`\"Unknown\"`}),_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#D4D4D4`},children:`,`})]}),`\n`,_jsxs(_components.span,{className:`line`,children:[_jsx(_components.span,{style:{color:`#116329`,\"--shiki-dark\":`#9CDCFE`},children:` \"ret_code\"`}),_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#D4D4D4`},children:`: `}),_jsx(_components.span,{style:{color:`#0550AE`,\"--shiki-dark\":`#B5CEA8`},children:`0`})]}),`\n`,_jsx(_components.span,{className:`line`,children:_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#D4D4D4`},children:`}`})}),`\n`]})})}),`\n`,_jsx(Heading,{level:`3`,id:`modbus-tcp-rilevamento-ubicazioni-di-stoccaggio`,children:`Modbus TCP (rilevamento ubicazioni di stoccaggio)`}),`\n`,_jsx(_components.p,{children:`I risultati sono ordinati per ID dell’ubicazione di stoccaggio; vengono restituite al massimo le prime 16 ubicazioni.`}),`\n`,_jsxs(Table,{children:[_jsx(_components.thead,{children:_jsxs(_components.tr,{children:[_jsx(_components.th,{children:`Configurazione`}),_jsx(_components.th,{children:`Valore`})]})}),_jsxs(_components.tbody,{children:[_jsxs(_components.tr,{children:[_jsx(_components.td,{children:`Porta`}),_jsx(_components.td,{\"data-numeric\":`true`,children:_jsx(_components.code,{children:`16502`})})]}),_jsxs(_components.tr,{children:[_jsx(_components.td,{children:`Indirizzo di ascolto`}),_jsxs(_components.td,{children:[_jsx(_components.code,{children:`0.0.0.0`}),` (tutte le interfacce di rete)`]})]}),_jsxs(_components.tr,{children:[_jsx(_components.td,{children:`Numero di registri`}),_jsx(_components.td,{\"data-numeric\":`true`,children:_jsx(_components.code,{children:`16`})})]}),_jsxs(_components.tr,{children:[_jsx(_components.td,{children:`Indirizzo iniziale`}),_jsx(_components.td,{\"data-numeric\":`true`,children:_jsx(_components.code,{children:`0x0100`})})]}),_jsxs(_components.tr,{children:[_jsx(_components.td,{children:`Ordine dei byte`}),_jsx(_components.td,{children:`Big-endian`})]})]})]}),`\n`,_jsxs(Table,{children:[_jsx(_components.thead,{children:_jsxs(_components.tr,{children:[_jsx(_components.th,{children:`Registro`}),_jsx(_components.th,{children:`Contenuto`}),_jsx(_components.th,{children:`Formato dati`})]})}),_jsxs(_components.tbody,{children:[_jsxs(_components.tr,{children:[_jsx(_components.td,{children:_jsx(_components.code,{children:`0x0100 + ID`})}),_jsx(_components.td,{children:`Risultati del rilevamento dell’ubicazione di stoccaggio e del marcatore`}),_jsxs(_components.td,{children:[_jsx(_components.code,{children:`uint16_t`}),` a 2 byte`]})]}),_jsxs(_components.tr,{children:[_jsx(_components.td,{children:`8 bit alti`}),_jsx(_components.td,{children:`Codice di stato dell’ubicazione di stoccaggio`}),_jsx(_components.td,{children:_jsx(_components.code,{children:`0–2`})})]}),_jsxs(_components.tr,{children:[_jsx(_components.td,{children:`8 bit bassi`}),_jsx(_components.td,{children:`Codice di stato del marcatore`}),_jsxs(_components.td,{children:[_jsx(_components.code,{children:`0–2`}),`; questa funzione non è attualmente disponibile, quindi ha lo stesso significato del codice di stato dell’ubicazione.`]})]})]})]}),`\n`,_jsxs(Table,{children:[_jsx(_components.thead,{children:_jsxs(_components.tr,{children:[_jsx(_components.th,{children:`Stato dell’ubicazione`}),_jsx(_components.th,{children:`Significato`}),_jsx(_components.th,{children:`Condizione`})]})}),_jsxs(_components.tbody,{children:[_jsxs(_components.tr,{children:[_jsx(_components.td,{\"data-numeric\":`true`,children:_jsx(_components.code,{children:`0`})}),_jsx(_components.td,{children:`Vuota`}),_jsx(_components.td,{children:`Nessuna merce o pallet.`})]}),_jsxs(_components.tr,{children:[_jsx(_components.td,{\"data-numeric\":`true`,children:_jsx(_components.code,{children:`1`})}),_jsx(_components.td,{children:`Occupata normalmente`}),_jsx(_components.td,{children:`Le merci sono posizionate come richiesto.`})]}),_jsxs(_components.tr,{children:[_jsx(_components.td,{\"data-numeric\":`true`,children:_jsx(_components.code,{children:`2`})}),_jsx(_components.td,{children:`Occupata in modo anomalo`}),_jsx(_components.td,{children:`Le dimensioni o la posizione del carico non rispettano i requisiti.`})]})]})]}),`\n`,_jsxs(Table,{children:[_jsx(_components.thead,{children:_jsxs(_components.tr,{children:[_jsx(_components.th,{children:`Stato del marcatore`}),_jsx(_components.th,{children:`Significato`})]})}),_jsxs(_components.tbody,{children:[_jsxs(_components.tr,{children:[_jsx(_components.td,{\"data-numeric\":`true`,children:_jsx(_components.code,{children:`0`})}),_jsx(_components.td,{children:`Marcatore non rilevato.`})]}),_jsxs(_components.tr,{children:[_jsx(_components.td,{\"data-numeric\":`true`,children:_jsx(_components.code,{children:`1`})}),_jsx(_components.td,{children:`Marcatore rilevato.`})]}),_jsxs(_components.tr,{children:[_jsx(_components.td,{\"data-numeric\":`true`,children:_jsx(_components.code,{children:`2`})}),_jsx(_components.td,{children:`Errore di rilevamento del marcatore.`})]})]})]}),`\n`,_jsx(Heading,{level:`4`,id:`leggere-la-quarta-ubicazione-di-stoccaggio`,children:`Leggere la quarta ubicazione di stoccaggio`}),`\n`,_jsxs(_components.p,{children:[`L’esempio seguente usa l’ID transazione `,_jsx(_components.code,{children:`0x0001`}),` per leggere un registro di mantenimento all’indirizzo `,_jsx(_components.code,{children:`0x0104`}),`. La risposta contiene lo stato `,_jsx(_components.code,{children:`0x0002`}),`.`]}),`\n`,_jsx(CodeBlock,{filename:``,numberOfLines:`3`,language:`text`,children:_jsx(_components.pre,{className:`shiki shiki-themes github-light-default dark-plus`,style:{backgroundColor:`#ffffff`,\"--shiki-dark-bg\":`#0B0C0E`,color:`#1f2328`,\"--shiki-dark\":`#D4D4D4`},language:`text`,children:_jsxs(_components.code,{language:`text`,numberOfLines:`3`,children:[_jsx(_components.span,{className:`line`,children:_jsx(_components.span,{children:`Request: 00 01 00 00 00 06 FF 03 01 04 00 01`})}),`\n`,_jsx(_components.span,{className:`line`,children:_jsx(_components.span,{children:`Response: 00 01 00 00 00 05 FF 03 02 00 02`})}),`\n`,_jsx(_components.span,{className:`line`,children:_jsx(_components.span,{})})]})})}),`\n`,_jsxs(Table,{children:[_jsx(_components.thead,{children:_jsxs(_components.tr,{children:[_jsx(_components.th,{children:`Campo`}),_jsx(_components.th,{children:`Valore della richiesta`}),_jsx(_components.th,{children:`Descrizione`})]})}),_jsxs(_components.tbody,{children:[_jsxs(_components.tr,{children:[_jsx(_components.td,{children:`Identificatore transazione`}),_jsx(_components.td,{\"data-numeric\":`true`,children:_jsx(_components.code,{children:`00 01`})}),_jsx(_components.td,{children:`Numero di sequenza del client; la risposta deve corrispondere.`})]}),_jsxs(_components.tr,{children:[_jsx(_components.td,{children:`Identificatore protocollo`}),_jsx(_components.td,{\"data-numeric\":`true`,children:_jsx(_components.code,{children:`00 00`})}),_jsx(_components.td,{children:`Valore Modbus/TCP fisso.`})]}),_jsxs(_components.tr,{children:[_jsx(_components.td,{children:`Lunghezza`}),_jsx(_components.td,{\"data-numeric\":`true`,children:_jsx(_components.code,{children:`00 06`})}),_jsx(_components.td,{children:`Numero di byte nei campi della richiesta successivi.`})]}),_jsxs(_components.tr,{children:[_jsx(_components.td,{children:`Identificatore unità`}),_jsx(_components.td,{children:_jsx(_components.code,{children:`FF`})}),_jsx(_components.td,{children:`Modalità broadcast o indirizzo del dispositivo.`})]}),_jsxs(_components.tr,{children:[_jsx(_components.td,{children:`Codice funzione`}),_jsx(_components.td,{\"data-numeric\":`true`,children:_jsx(_components.code,{children:`03`})}),_jsx(_components.td,{children:`Legge i registri di mantenimento.`})]}),_jsxs(_components.tr,{children:[_jsx(_components.td,{children:`Indirizzo iniziale`}),_jsx(_components.td,{\"data-numeric\":`true`,children:_jsx(_components.code,{children:`01 04`})}),_jsxs(_components.td,{\"data-numeric\":`true`,children:[_jsx(_components.code,{children:`0x0100 + 4`}),`.`]})]}),_jsxs(_components.tr,{children:[_jsx(_components.td,{children:`Numero di registri`}),_jsx(_components.td,{\"data-numeric\":`true`,children:_jsx(_components.code,{children:`00 01`})}),_jsx(_components.td,{children:`Legge un registro.`})]})]})]}),`\n`,_jsx(Heading,{level:`2`,id:`risoluzione-dei-problemi`,children:`Risoluzione dei problemi`}),`\n`,_jsxs(Table,{children:[_jsx(_components.thead,{children:_jsxs(_components.tr,{children:[_jsx(_components.th,{children:`Sintomo`}),_jsx(_components.th,{children:`Verifiche prioritarie`})]})}),_jsxs(_components.tbody,{children:[_jsxs(_components.tr,{children:[_jsx(_components.td,{children:`Fotocamera non trovata`}),_jsx(_components.td,{children:`Verifica che host e fotocamera condividano una sottorete, che la scheda di rete sia gigabit e che l’alimentazione e i collegamenti allo switch siano funzionanti.`})]}),_jsxs(_components.tr,{children:[_jsx(_components.td,{children:`I parametri non hanno effetto`}),_jsxs(_components.td,{children:[`Verifica che dopo la modifica sia stato selezionato `,_jsx(_components.strong,{children:`Salva e invia`}),`.`]})]}),_jsxs(_components.tr,{children:[_jsx(_components.td,{children:`Nessun risultato dell’algoritmo`}),_jsx(_components.td,{children:`Verifica che sia stato eseguito il flashing del firmware dell’algoritmo corretto, che il dispositivo sia verde e che l’algoritmo sia abilitato.`})]}),_jsxs(_components.tr,{children:[_jsx(_components.td,{children:`Nuvola di punti vuota o non aggiornata`}),_jsx(_components.td,{children:`Scorri sull’area della nuvola di punti per visualizzare i dati; se necessario, abilita l’aggiornamento automatico.`})]}),_jsxs(_components.tr,{children:[_jsx(_components.td,{children:`Risultati anomali delle ubicazioni o dei volumi`}),_jsx(_components.td,{children:`Ricontrolla le direzioni degli assi estrinseci, il piano di rilevamento e i limiti delle regioni, quindi ripeti il test con oggetti del sito.`})]})]})]})]})}function MDXContent(props={}){const{wrapper:MDXLayout}={..._provideComponents(),...props.components};return MDXLayout?_jsx(MDXLayout,{...props,children:_jsx(_createMdxContent,{...props})}):_createMdxContent(props)}return{default:MDXContent};function _missingMdxReference(id,component){throw new Error(`Expected `+(component?`component`:`object`)+\" `\"+id+\"` to be defined: you likely forgot to import, pass, or provide it.\")}","frontmatter":{},"scope":{"config":{},"pageMetadata":{"title":"Distribuire gli algoritmi di rilevamento e integrare i risultati","sidebarTitle":"Distribuzione degli algoritmi di rilevamento","description":"Distribuisci gli algoritmi di rilevamento delle persone, delle ubicazioni di stoccaggio e dei volumi, configura i parametri estrinseci e i parametri della fotocamera e recupera i risultati tramite TCP, UDP, HTTP o Modbus TCP.","href":"/it/developers/deployment/algorithm-detection"}}},"mdxSourceWithNoJs":null},"mdxExtracts":{"tableOfContents":[{"title":"Ambito supportato","slug":"ambito-supportato","depth":2,"children":[{"title":"Componenti del sistema","slug":"componenti-del-sistema","depth":3,"children":[]},{"title":"Algoritmi e fotocamere","slug":"algoritmi-e-fotocamere","depth":3,"children":[]},{"title":"Ambiente dell’applicazione host","slug":"ambiente-dell’applicazione-host","depth":3,"children":[]}]},{"title":"Distribuzione hardware e di rete","slug":"distribuzione-hardware-e-di-rete","depth":2,"children":[{"title":"Installare la fotocamera","slug":"installare-la-fotocamera","depth":3,"children":[]},{"title":"Collegare i dispositivi","slug":"collegare-i-dispositivi","depth":3,"children":[]},{"title":"Configurare la rete dell’host","slug":"configurare-la-rete-dell’host","depth":3,"children":[]}]},{"title":"Installare e aggiornare il software","slug":"installare-e-aggiornare-il-software","depth":2,"children":[{"title":"Installare le applicazioni host","slug":"installare-le-applicazioni-host","depth":3,"children":[]},{"title":"Aggiornare il firmware dell’algoritmo","slug":"aggiornare-il-firmware-dell’algoritmo","depth":3,"children":[]}]},{"title":"Applicazione host dell’algoritmo","slug":"applicazione-host-dell’algoritmo","depth":2,"children":[{"title":"Avvio e stato","slug":"avvio-e-stato","depth":3,"children":[]},{"title":"Strumenti di base","slug":"strumenti-di-base","depth":3,"children":[]},{"title":"Barra di stato e riproduzione","slug":"barra-di-stato-e-riproduzione","depth":3,"children":[]}]},{"title":"Calibrazione estrinseca","slug":"calibrazione-estrinseca","depth":2,"children":[{"title":"Configurazione della fotocamera","slug":"configurazione-della-fotocamera","depth":3,"children":[]}]},{"title":"Riferimento dei parametri dell’algoritmo","slug":"riferimento-dei-parametri-dell’algoritmo","depth":2,"children":[]},{"title":"Distribuire un algoritmo","slug":"distribuire-un-algoritmo","depth":2,"children":[{"title":"Rilevamento persone","slug":"rilevamento-persone","depth":3,"children":[]},{"title":"Rilevamento ubicazioni di stoccaggio","slug":"rilevamento-ubicazioni-di-stoccaggio","depth":3,"children":[]},{"title":"Rilevamento volumi","slug":"rilevamento-volumi","depth":3,"children":[]}]},{"title":"Interfacce di comunicazione","slug":"interfacce-di-comunicazione","depth":2,"children":[{"title":"Metodi di trasporto","slug":"metodi-di-trasporto","depth":3,"children":[]},{"title":"Richiesta del risultato HTTP","slug":"richiesta-del-risultato-http","depth":3,"children":[]},{"title":"Campi comuni della risposta","slug":"campi-comuni-della-risposta","depth":3,"children":[]},{"title":"Esempio di risposta del rilevamento persone","slug":"esempio-di-risposta-del-rilevamento-persone","depth":3,"children":[]},{"title":"Modbus TCP (rilevamento ubicazioni di stoccaggio)","slug":"modbus-tcp-rilevamento-ubicazioni-di-stoccaggio","depth":3,"children":[]},{"title":"Leggere la quarta ubicazione di stoccaggio","slug":"leggere-la-quarta-ubicazione-di-stoccaggio","depth":4,"children":[]}]},{"title":"Risoluzione dei problemi","slug":"risoluzione-dei-problemi","depth":2,"children":[]}],"codeExamples":{}},"jsLinks":["/_mintlify/custom/mrdvs/378d39fdec417f5f/external-links.js","/_mintlify/custom/mrdvs/c54e1a04644ca15d/preview-navigation.js","/_mintlify/custom/mrdvs/dd034041c302a149/site-details.js","/_mintlify/custom/mrdvs/a09862a38ab1157d/public-email.js"],"subdomain":"mrdvs","siteName":"MRDVS","title":"Distribuire gli algoritmi di rilevamento e integrare i risultati - MRDVS","navMaps":{"firstHrefInVersion":{},"firstHrefInLanguage":{"zh-CN":{"href":"/it/developers/deployment/algorithm-detection","matchLevel":0},"en":{"href":"/en","matchLevel":4},"ja":{"href":"/ja","matchLevel":4},"ko":{"href":"/ko","matchLevel":4},"vi":{"href":"/vi","matchLevel":4},"de":{"href":"/de","matchLevel":4},"it":{"href":"/it","matchLevel":4},"es":{"href":"/es","matchLevel":4},"ru":{"href":"/ru","matchLevel":4}}},"lastModified":"2026-10-22T04:37:41.182Z","originalFileLocation":"it/developers/deployment/algorithm-detection.mdx","locale":"zh-CN"},"headHtml":"\u003cscript data-mint-head>(function(){var d=document.documentElement,p=\"light\";if(!p){try{p=localStorage.getItem(\"isDarkMode\")}catch(e){}if(p==='true')p='dark';else if(p==='false')p='light';if(p!=='light'\u0026\u0026p!=='dark'\u0026\u0026p!=='system')p=\"light\"}var r=p==='system'?(matchMedia(\"(prefers-color-scheme: dark)\").matches?'dark':'light'):p;d.classList.remove(r==='dark'?'light':'dark');d.classList.add(r);d.setAttribute(\"data-theme-preference\",p)})();\u003c/script>\u003cmeta data-mint-head name=\"description\" content=\"Distribuisci gli algoritmi di rilevamento delle persone, delle ubicazioni di stoccaggio e dei volumi, configura i parametri estrinseci e i parametri della fotocamera e recupera i risultati tramite TCP, UDP, HTTP o Modbus TCP.\">\u003cmeta data-mint-head name=\"application-name\" content=\"MRDVS\">\u003cmeta data-mint-head name=\"generator\" content=\"Mintlify\">\u003clink data-mint-head rel=\"icon\" type=\"image/png\" sizes=\"192x192\" href=\"/mintlify-assets/_mintlify/favicons/mrdvs/QwnmvGNekAGjBlQD/_generated/favicon/android-chrome-192x192.png\" media=\"(prefers-color-scheme: light)\">\u003clink data-mint-head rel=\"apple-touch-icon\" type=\"image/png\" sizes=\"180x180\" href=\"/mintlify-assets/_mintlify/favicons/mrdvs/QwnmvGNekAGjBlQD/_generated/favicon/apple-touch-icon.png\">\u003clink data-mint-head rel=\"icon\" type=\"image/png\" sizes=\"16x16\" href=\"/mintlify-assets/_mintlify/favicons/mrdvs/QwnmvGNekAGjBlQD/_generated/favicon/favicon-16x16.png\" media=\"(prefers-color-scheme: light)\">\u003clink data-mint-head rel=\"icon\" type=\"image/png\" sizes=\"32x32\" href=\"/mintlify-assets/_mintlify/favicons/mrdvs/QwnmvGNekAGjBlQD/_generated/favicon/favicon-32x32.png\" media=\"(prefers-color-scheme: light)\">\u003clink data-mint-head rel=\"shortcut icon\" type=\"image/x-icon\" href=\"/mintlify-assets/_mintlify/favicons/mrdvs/QwnmvGNekAGjBlQD/_generated/favicon/favicon.ico\" media=\"(prefers-color-scheme: light)\">\u003clink data-mint-head rel=\"icon\" type=\"image/png\" sizes=\"192x192\" href=\"/mintlify-assets/_mintlify/favicons/mrdvs/QwnmvGNekAGjBlQD/_generated/favicon-dark/android-chrome-192x192.png\" media=\"(prefers-color-scheme: dark)\">\u003clink data-mint-head rel=\"icon\" type=\"image/png\" sizes=\"16x16\" href=\"/mintlify-assets/_mintlify/favicons/mrdvs/QwnmvGNekAGjBlQD/_generated/favicon-dark/favicon-16x16.png\" media=\"(prefers-color-scheme: dark)\">\u003clink data-mint-head rel=\"icon\" type=\"image/png\" sizes=\"32x32\" href=\"/mintlify-assets/_mintlify/favicons/mrdvs/QwnmvGNekAGjBlQD/_generated/favicon-dark/favicon-32x32.png\" media=\"(prefers-color-scheme: dark)\">\u003clink data-mint-head rel=\"shortcut icon\" type=\"image/x-icon\" href=\"/mintlify-assets/_mintlify/favicons/mrdvs/QwnmvGNekAGjBlQD/_generated/favicon-dark/favicon.ico\" media=\"(prefers-color-scheme: dark)\">\u003cmeta data-mint-head property=\"og:title\" content=\"Distribuire gli algoritmi di rilevamento e integrare i risultati - MRDVS\">\u003cmeta data-mint-head property=\"og:description\" content=\"Distribuisci gli algoritmi di rilevamento delle persone, delle ubicazioni di stoccaggio e dei volumi, configura i parametri estrinseci e i parametri della fotocamera e recupera i risultati tramite TCP, UDP, HTTP o Modbus TCP.\">\u003cmeta data-mint-head property=\"og:site_name\" content=\"MRDVS\">\u003cmeta data-mint-head property=\"og:url\" content=\"https://docs.mrdvs.com/it/developers/deployment/algorithm-detection\">\u003cmeta data-mint-head property=\"og:type\" content=\"website\">\u003cmeta data-mint-head property=\"og:image\" content=\"https://mrdvs.mintlify.app/_mintlify/api/og/v2?division=Documentation\u0026amp;title=Distribuire+gli+algoritmi+di+rilevamento+e+integrare+i+risultati\u0026amp;description=Distribuisci+gli+algoritmi+di+rilevamento+delle+persone%2C+delle+ubicazioni+di+stoccaggio+e+dei+volumi%2C+configura+i+parametri+estrinseci+e+i+parametri+della+fotoc\u0026amp;theme=202747420bf96d2e3b4223e2\u0026amp;signature=95b9251b1b02d2ca1b6ba2e57456b4d23b2f6384b14f7f12945ae0dbb1fbd593\">\u003cmeta data-mint-head property=\"og:image:width\" content=\"1200\">\u003cmeta data-mint-head property=\"og:image:height\" content=\"630\">\u003cmeta data-mint-head name=\"twitter:card\" content=\"summary_large_image\">\u003cmeta data-mint-head name=\"twitter:title\" content=\"Distribuire gli algoritmi di rilevamento e integrare i risultati - MRDVS\">\u003cmeta data-mint-head name=\"twitter:description\" content=\"Distribuisci gli algoritmi di rilevamento delle persone, delle ubicazioni di stoccaggio e dei volumi, configura i parametri estrinseci e i parametri della fotocamera e recupera i risultati tramite TCP, UDP, HTTP o Modbus TCP.\">\u003cmeta data-mint-head name=\"twitter:image\" content=\"https://mrdvs.mintlify.app/_mintlify/api/og/v2?division=Documentation\u0026amp;title=Distribuire+gli+algoritmi+di+rilevamento+e+integrare+i+risultati\u0026amp;description=Distribuisci+gli+algoritmi+di+rilevamento+delle+persone%2C+delle+ubicazioni+di+stoccaggio+e+dei+volumi%2C+configura+i+parametri+estrinseci+e+i+parametri+della+fotoc\u0026amp;theme=202747420bf96d2e3b4223e2\u0026amp;signature=95b9251b1b02d2ca1b6ba2e57456b4d23b2f6384b14f7f12945ae0dbb1fbd593\">\u003cmeta data-mint-head name=\"twitter:image:width\" content=\"1200\">\u003cmeta data-mint-head name=\"twitter:image:height\" content=\"630\">\u003cmeta data-mint-head name=\"msapplication-config\" content=\"/mintlify-assets/_mintlify/favicons/mrdvs/QwnmvGNekAGjBlQD/_generated/favicon/browserconfig.xml\">\u003cmeta data-mint-head name=\"apple-mobile-web-app-title\" content=\"MRDVS\">\u003cmeta data-mint-head name=\"msapplication-TileColor\" content=\"#1248B8\">\u003cmeta data-mint-head name=\"google-site-verification\" content=\"paNq6FdXn6w3vlYqGqsx4YFtZgIyoE54Ya803O0ilNM\">\u003cmeta data-mint-head name=\"baidu-site-verification\" content=\"codeva-aVWshvu4wM\">\u003cmeta data-mint-head name=\"msvalidate.01\" content=\"79667988DD5B77655E355B82AFD283E3\">\u003clink data-mint-head rel=\"canonical\" href=\"https://docs.mrdvs.com/it/developers/deployment/algorithm-detection\">\u003clink data-mint-head rel=\"alternate\" type=\"application/xml\" href=\"/sitemap.xml\">\u003clink data-mint-head rel=\"alternate\" type=\"text/markdown\" href=\"/it/developers/deployment/algorithm-detection.md\">\u003cscript data-mint-head type=\"application/ld+json\">{\"@context\":\"https://schema.org\",\"@type\":\"WebSite\",\"name\":\"MRDVS\",\"creator\":{\"@type\":\"Organization\",\"name\":\"Mintlify\",\"url\":\"https://mintlify.com\"}}\u003c/script>","siteName":"MRDVS","nav":{"global":null,"languages":[{"language":"zh-CN","default":true,"footer":{"socials":{"github":"https://github.com/Lanxin-MRDVS/CameraSDK","linkedin":"https://www.linkedin.com/company/mrdvs","youtube":"https://www.youtube.com/@MRDVS-2024","website":"https://www.mrdvs.cn/"},"links":[{"header":"产品","items":[{"label":"S 系列3D相机","href":"https://www.mrdvs.cn/product/3d-obstacle-avoidance-cameras-s-series"},{"label":"M 系列3D相机","href":"https://www.mrdvs.cn/product/m-series"},{"label":"V 系列导航模组","href":"https://www.mrdvs.cn/product/v-series"}]},{"header":"解决方案","items":[{"label":"移动机器人视觉","href":"https://www.mrdvs.cn/solutions/solutions-industrial-mobile-robot"},{"label":"仓储物流自动化","href":"https://www.mrdvs.cn/solutions/solutions-warehouse-visual-perception"},{"label":"无人机视觉感知","href":"https://www.mrdvs.cn/solutions/solutions-drones"}]},{"header":"联系我们","items":[{"label":"关于 MRDVS","href":"/about"},{"label":"售前咨询","href":"https://work.weixin.qq.com/ca/cawcde978188b336f1"},{"label":"电话:400-025-6680","href":"/contact"},{"label":"[email protected]","href":"mailto:[email protected]"},{"label":"浙ICP备2023021387号-2","href":"https://beian.miit.gov.cn/"}]}]},"navbar":{"links":[{"icon":{"style":"brands","name":"github"},"href":"https://github.com/Lanxin-MRDVS","label":"GitHub"},{"icon":"/images/favicon.png","href":"https://www.mrdvs.cn/","label":"MRDVS"}],"primary":{"type":"button","label":"联系我们","href":"https://work.weixin.qq.com/ca/cawcde978188b336f1"}},"tabs":[{"tab":"首页","groups":[{"group":"概览","pages":[{"title":"迈尔微视知识社区","sidebarTitle":"知识社区","href":""}]},{"group":"关于迈尔微视","pages":[{"title":"关于迈尔微视","sidebarTitle":"公司介绍","href":"/about"},{"title":"联系我们","href":"/contact"}]}]},{"tab":"视觉硬件产品","groups":[{"group":"概览","pages":[{"title":"视觉硬件产品","sidebarTitle":"硬件总览","href":"/products/overview"}]},{"group":"S 系列环境感知 3D 相机","pages":[{"title":"S10系列3D相机","sidebarTitle":"S10系列3D相机","href":"/products/s-series/s10-overview"},{"title":"S10Ultra Lite 纯固态雷达","sidebarTitle":"S10Ultra Lite 纯固态雷达","href":"/products/s-series/s10-ultra-lite-overview"},{"title":"S11 dToF 3D相机","sidebarTitle":"S11 dToF 3D相机","href":"/products/s-series/s11-overview"},{"title":"S01 小面阵 3D 相机","sidebarTitle":"S01 小面阵 3D 相机","tag":"即将发布","href":"/products/s-series/s01-overview"},{"title":"S12 系列 3D 相机","sidebarTitle":"S12 系列 3D 相机","tag":"即将发布","href":"/products/s-series/s12-overview"}]},{"group":"P 系列广域感知 3D 相机","pages":[{"title":"P20 3D 相机","sidebarTitle":"P20 3D 相机","tag":"即将发布","href":"/products/p-series/p20-overview"}]},{"group":"M 系列工业视觉 3D 相机","pages":[{"title":"M4系列iToF 3D相机","sidebarTitle":"M4系列iToF 3D相机","href":"/products/m-series/m4-overview"},{"title":"M4-G系列3D相机","sidebarTitle":"M4-G系列3D相机","href":"/products/m-series/m4-g-overview"}]},{"group":"V 系列视觉定位","pages":[{"title":"V2 Pro 导航控制器","sidebarTitle":"V2 Pro 导航控制器","href":"/products/v-series/v2-pro-overview"}]}]},{"tab":"工业解决方案","groups":[{"group":"概览","pages":[{"title":"工业解决方案","sidebarTitle":"解决方案总览","href":"/solutions"}]},{"group":"仓储物流","pages":[{"title":"应用算法平台","sidebarTitle":"应用算法平台","href":"/solutions/aw3"},{"title":"智能叉车托盘识别","sidebarTitle":"托盘识别","href":"/solutions/warehouse/pallet-recognition"},{"title":"库位状态识别","sidebarTitle":"库位状态识别","href":"/solutions/warehouse/bin-location-status"},{"title":"拆垛算法","sidebarTitle":"拆垛算法","href":"/solutions/warehouse/soft-package-depalletizing"},{"title":"人体安全防护","sidebarTitle":"人体安全防护","href":"/solutions/mobile-robots/human-safety"},{"title":"3D 视觉体积测量","sidebarTitle":"体积测量","href":"/solutions/warehouse/volume-measurement"}]},{"group":"移动机器人","pages":[{"title":"移动机器人 3D 视觉避障","href":"/solutions/mobile-robots/3d-obstacle-avoidance"},{"title":"V2Pro 定位导航模组","sidebarTitle":"V2Pro 定位导航模组","href":"/solutions/mobile-robots/slam-localization"}]},{"group":"解决方案与案例","pages":[{"group":"智能仓储与搬运","expanded":false,"pages":[{"title":"AGV 叉车料筐堆垛","sidebarTitle":"AGV 叉车料筐堆垛","href":"/solutions/warehouse/bin-stacking"},{"title":"3D 视觉助力立库安全","sidebarTitle":"立库安全","href":"/solutions/warehouse/automated-storage-safety"},{"title":"案例分享:安徽某化工企业软包拆垛自动化升级","sidebarTitle":"化工企业软包拆垛","href":"/solutions/warehouse/cases/chemical-soft-package-depalletizing"},{"title":"案例分享:巨石集团非标准托盘识别案例","sidebarTitle":"巨石集团非标托盘识别","href":"/solutions/warehouse/cases/jushi-nonstandard-pallet-recognition"},{"title":"案例分享:某华南自动化仓库部署库位状态识别系统","sidebarTitle":"自动化仓库库位状态识别","href":"/solutions/warehouse/cases/bin-location-status"},{"title":"案例分享:某汽车制造物流中心料筐堆垛","sidebarTitle":"汽车制造物流中心料筐堆垛","href":"/solutions/warehouse/cases/automotive-bin-stacking"},{"title":"案例分享:F 公司无人叉车每日执行超 500 条任务","sidebarTitle":"无人叉车每日执行超 500 条任务","href":"/solutions/warehouse/cases/unmanned-forklift-500-tasks"},{"title":"案例分享:顶视导航支持无人叉车 3000+ 库位作业","sidebarTitle":"顶视导航支持 3000+ 库位作业","href":"/solutions/warehouse/cases/overhead-navigation-3000-locations"}]},{"group":"机器人感知与导航","expanded":false,"pages":[{"title":"案例:工业环境中的视觉 SLAM 导航","sidebarTitle":"工业环境中的视觉 SLAM 导航","href":"/solutions/mobile-robots/cases/slam-in-industrial-environments"},{"title":"案例:人形机器人的 3D 视觉感知","sidebarTitle":"人形机器人 3D 视觉感知","href":"/solutions/mobile-robots/cases/humanoid-robot-3d-vision"},{"title":"案例:潜伏式 AMR 的 3D 视觉避障","sidebarTitle":"潜伏式 AMR 视觉避障","href":"/solutions/mobile-robots/cases/under-ride-amr-obstacle-avoidance"},{"title":"案例:轮式人形机器人的 3D 视觉避障","sidebarTitle":"轮式人形机器人视觉避障","href":"/solutions/mobile-robots/cases/wheeled-humanoid-obstacle-avoidance"}]},{"group":"智慧农业","expanded":false,"pages":[{"title":"视觉引导农业机器人果蔬采摘","sidebarTitle":"农业机器人果蔬采摘","href":"/solutions/agriculture/robotic-harvesting"}]}]}]},{"tab":"开发者中心","groups":[{"group":"概览","pages":[{"title":"开发文档总览","sidebarTitle":"开发总览","href":"/developers"}]},{"group":"相机 SDK","pages":[{"title":"相机 SDK","sidebarTitle":"相机 SDK","href":"/developers/camera-sdk/index"},{"title":"相机 SDK 使用手册","href":"/developers/camera-sdk/user-guide"},{"title":"Linux 示例使用手册","href":"/developers/camera-sdk/linux-examples"},{"title":"JSON 通信协议","href":"/developers/camera-sdk/json-protocol"}]},{"group":"相机工具","pages":[{"title":"LxCameraViewer 上位机软件使用手册","sidebarTitle":"LxCameraViewer 相机软件","href":"/developers/software/lxcameraviewer"}]},{"group":"ROS 集成","pages":[{"title":"ROS 快速入门","href":"/developers/ros/quickstart"},{"title":"V2 ROS1 接口说明","href":"/developers/ros/v2-ros1"},{"title":"V2 ROS2 接口说明","href":"/developers/ros/v2-ros2"}]},{"group":"V2 定位与协议","pages":[{"title":"V2 纯定位版本操作手册","href":"/developers/v2-localization/pure-localization-guide"},{"title":"V2 视觉定位模块 HTTP 通信协议","href":"/developers/v2-localization/http-protocol"},{"title":"V2 Pro UDP 通信协议","href":"/developers/v2-localization/udp-protocol"},{"title":"V2 使用外部 LiDAR","href":"/developers/v2-localization/external-lidar"}]}]},{"tab":"支持与下载","groups":[{"group":"概览","pages":[{"title":"支持与资源","sidebarTitle":"资源导航","href":"/resources"}]},{"group":"常见问题","pages":[{"title":"相机与软件常见问题","sidebarTitle":"相机与软件常见问题","href":"/resources/faq/general-vision"},{"title":"软件常见操作","href":"/resources/faq/software-operations"},{"title":"应用算法常见问题","href":"/resources/faq/application-algorithms"}]},{"group":"下载中心","pages":[{"title":"规格书与用户手册","href":"/resources/downloads/specifications-and-user-guides"},{"title":"软件下载","href":"/resources/downloads/software-and-sdk"},{"title":"图纸与模型","sidebarTitle":"图纸与模型","href":"/resources/downloads/product-drawings"},{"title":"产品与方案画册","sidebarTitle":"产品与方案画册","href":"/resources/downloads/product-and-solution-materials"},{"title":"认证资料","sidebarTitle":"认证资料","href":"/resources/downloads/certifications"}]},{"group":"技术与视频","pages":[{"title":"深度感知技术","sidebarTitle":"深度感知技术","href":"/resources/insights/depth-sensing"},{"title":"视频中心","href":"/resources/videos/index"}]},{"group":"历史设备资料","expanded":false,"pages":[{"title":"S2 Max 相机快速入门","hidden":true,"href":"/products/s-series/s2-max-quickstart"},{"title":"S2 Max 相机产品用户手册","hidden":true,"href":"/products/s-series/s2-max-user-guide"},{"title":"S2 Max 2.0 相机快速入门","hidden":true,"href":"/products/s-series/s2-max-2-quickstart"},{"title":"S2 Max 2.0 产品用户手册","hidden":true,"href":"/products/s-series/s2-max-2-user-guide"}]}]}]},{"language":"en","footer":{"socials":{"github":"https://github.com/Lanxin-MRDVS/CameraSDK","linkedin":"https://www.linkedin.com/company/mrdvs","youtube":"https://www.youtube.com/@MRDVS-2024","website":"https://mrdvs.com/"},"links":[{"header":"Products","items":[{"label":"S Series 3D Cameras","href":"https://mrdvs.com/s-series-obstacle-avoidance-robot-cameras"},{"label":"M Series 3D Cameras","href":"https://mrdvs.com/m-series-time-of-flight-camera"},{"label":"V Series Localization","href":"https://mrdvs.com/v2-pro-rtls-slam-solution"}]},{"header":"Solutions","items":[{"label":"Mobile Robot Vision","href":"https://mrdvs.com/humanoids-quadrupeds-robots"},{"label":"Warehouse \u0026 Logistics","href":"https://mrdvs.com/vision-guided-robotics"},{"label":"Lawn Mower Perception","href":"https://mrdvs.com/solid-state-lidar-vision-fusion"}]},{"header":"Contact Us","items":[{"label":"About MRDVS","href":"/en/about"},{"label":"WhatsApp","href":"https://wa.me/8613370882355"},{"label":"[email protected]","href":"mailto:[email protected]"}]}]},"navbar":{"links":[{"icon":{"style":"brands","name":"github"},"href":"https://github.com/Lanxin-MRDVS","label":"GitHub"},{"icon":"/images/favicon.png","href":"https://mrdvs.com/","label":"MRDVS"}],"primary":{"type":"button","label":"Contact Us","href":"/en/contact"}},"pages":[{"title":"en","href":"/en"}]},{"language":"ja","footer":{"socials":{"github":"https://github.com/Lanxin-MRDVS/CameraSDK","linkedin":"https://www.linkedin.com/company/mrdvs","youtube":"https://www.youtube.com/@MRDVS-2024","website":"https://mrdvs.com/"},"links":[{"header":"製品","items":[{"label":"Sシリーズ3Dカメラ","href":"https://mrdvs.com/s-series-obstacle-avoidance-robot-cameras"},{"label":"Mシリーズ3Dカメラ","href":"https://mrdvs.com/m-series-time-of-flight-camera"},{"label":"Vシリーズローカライゼーション","href":"https://mrdvs.com/v2-pro-rtls-slam-solution"}]},{"header":"ソリューション","items":[{"label":"モバイルロボットビジョン","href":"https://mrdvs.com/humanoids-quadrupeds-robots"},{"label":"倉庫・物流","href":"https://mrdvs.com/vision-guided-robotics"},{"label":"芝刈り機向け認識","href":"https://mrdvs.com/solid-state-lidar-vision-fusion"}]},{"header":"お問い合わせ","items":[{"label":"MRDVSについて","href":"/ja/about"},{"label":"WhatsApp","href":"https://wa.me/8613370882355"},{"label":"[email protected]","href":"mailto:[email protected]"}]}]},"navbar":{"links":[{"icon":{"style":"brands","name":"github"},"href":"https://github.com/Lanxin-MRDVS","label":"GitHub"},{"icon":"/images/favicon.png","href":"https://mrdvs.com/","label":"MRDVS"}],"primary":{"type":"button","label":"お問い合わせ","href":"/ja/contact"}},"pages":[{"title":"ja","href":"/ja"}]},{"language":"ko","footer":{"socials":{"github":"https://github.com/Lanxin-MRDVS/CameraSDK","linkedin":"https://www.linkedin.com/company/mrdvs","youtube":"https://www.youtube.com/@MRDVS-2024","website":"https://mrdvs.com/"},"links":[{"header":"제품","items":[{"label":"S 시리즈 3D 카메라","href":"https://mrdvs.com/s-series-obstacle-avoidance-robot-cameras"},{"label":"M 시리즈 3D 카메라","href":"https://mrdvs.com/m-series-time-of-flight-camera"},{"label":"V 시리즈 위치 추정","href":"https://mrdvs.com/v2-pro-rtls-slam-solution"}]},{"header":"솔루션","items":[{"label":"이동 로봇 비전","href":"https://mrdvs.com/humanoids-quadrupeds-robots"},{"label":"창고 및 물류","href":"https://mrdvs.com/vision-guided-robotics"},{"label":"잔디깎이 로봇 인식","href":"https://mrdvs.com/solid-state-lidar-vision-fusion"}]},{"header":"문의","items":[{"label":"MRDVS 소개","href":"/ko/about"},{"label":"WhatsApp","href":"https://wa.me/8613370882355"},{"label":"[email protected]","href":"mailto:[email protected]"}]}]},"navbar":{"links":[{"icon":{"style":"brands","name":"github"},"href":"https://github.com/Lanxin-MRDVS","label":"GitHub"},{"icon":"/images/favicon.png","href":"https://mrdvs.com/","label":"MRDVS"}],"primary":{"type":"button","label":"문의하기","href":"/ko/contact"}},"pages":[{"title":"ko","href":"/ko"}]},{"language":"vi","footer":{"socials":{"github":"https://github.com/Lanxin-MRDVS/CameraSDK","linkedin":"https://www.linkedin.com/company/mrdvs","youtube":"https://www.youtube.com/@MRDVS-2024","website":"https://mrdvs.com/"},"links":[{"header":"Sản phẩm","items":[{"label":"Camera 3D dòng S","href":"https://mrdvs.com/s-series-obstacle-avoidance-robot-cameras"},{"label":"Camera 3D dòng M","href":"https://mrdvs.com/m-series-time-of-flight-camera"},{"label":"Định vị dòng V","href":"https://mrdvs.com/v2-pro-rtls-slam-solution"}]},{"header":"Giải pháp","items":[{"label":"Thị giác robot di động","href":"https://mrdvs.com/humanoids-quadrupeds-robots"},{"label":"Kho vận \u0026 logistics","href":"https://mrdvs.com/vision-guided-robotics"},{"label":"Nhận thức cho máy cắt cỏ","href":"https://mrdvs.com/solid-state-lidar-vision-fusion"}]},{"header":"Liên hệ","items":[{"label":"Giới thiệu MRDVS","href":"/vi/about"},{"label":"WhatsApp","href":"https://wa.me/8613370882355"},{"label":"[email protected]","href":"mailto:[email protected]"}]}]},"navbar":{"links":[{"icon":{"style":"brands","name":"github"},"href":"https://github.com/Lanxin-MRDVS","label":"GitHub"},{"icon":"/images/favicon.png","href":"https://mrdvs.com/","label":"MRDVS"}],"primary":{"type":"button","label":"Liên hệ","href":"/vi/contact"}},"pages":[{"title":"vi","href":"/vi"}]},{"language":"de","footer":{"socials":{"github":"https://github.com/Lanxin-MRDVS/CameraSDK","linkedin":"https://www.linkedin.com/company/mrdvs","youtube":"https://www.youtube.com/@MRDVS-2024","website":"https://mrdvs.com/"},"links":[{"header":"Produkte","items":[{"label":"3D-Kameras der S-Serie","href":"https://mrdvs.com/s-series-obstacle-avoidance-robot-cameras"},{"label":"3D-Kameras der M-Serie","href":"https://mrdvs.com/m-series-time-of-flight-camera"},{"label":"Lokalisierung der V-Serie","href":"https://mrdvs.com/v2-pro-rtls-slam-solution"}]},{"header":"Lösungen","items":[{"label":"Robotersicht für mobile Roboter","href":"https://mrdvs.com/humanoids-quadrupeds-robots"},{"label":"Lager und Logistik","href":"https://mrdvs.com/vision-guided-robotics"},{"label":"Wahrnehmung für Rasenmäher","href":"https://mrdvs.com/solid-state-lidar-vision-fusion"}]},{"header":"Kontakt","items":[{"label":"Über MRDVS","href":"/de/about"},{"label":"WhatsApp","href":"https://wa.me/8613370882355"},{"label":"[email protected]","href":"mailto:[email protected]"}]}]},"navbar":{"links":[{"icon":{"style":"brands","name":"github"},"href":"https://github.com/Lanxin-MRDVS","label":"GitHub"},{"icon":"/images/favicon.png","href":"https://mrdvs.com/","label":"MRDVS"}],"primary":{"type":"button","label":"Kontakt","href":"/de/contact"}},"pages":[{"title":"de","href":"/de"}]},{"language":"it","footer":{"socials":{"github":"https://github.com/Lanxin-MRDVS/CameraSDK","linkedin":"https://www.linkedin.com/company/mrdvs","youtube":"https://www.youtube.com/@MRDVS-2024","website":"https://mrdvs.com/"},"links":[{"header":"Prodotti","items":[{"label":"Telecamere 3D serie S","href":"https://mrdvs.com/s-series-obstacle-avoidance-robot-cameras"},{"label":"Telecamere 3D serie M","href":"https://mrdvs.com/m-series-time-of-flight-camera"},{"label":"Localizzazione serie V","href":"https://mrdvs.com/v2-pro-rtls-slam-solution"}]},{"header":"Soluzioni","items":[{"label":"Visione per robot mobili","href":"https://mrdvs.com/humanoids-quadrupeds-robots"},{"label":"Magazzino e logistica","href":"https://mrdvs.com/vision-guided-robotics"},{"label":"Percezione per rasaerba","href":"https://mrdvs.com/solid-state-lidar-vision-fusion"}]},{"header":"Contatti","items":[{"label":"Informazioni su MRDVS","href":"/it/about"},{"label":"WhatsApp","href":"https://wa.me/8613370882355"},{"label":"[email protected]","href":"mailto:[email protected]"}]}]},"navbar":{"links":[{"icon":{"style":"brands","name":"github"},"href":"https://github.com/Lanxin-MRDVS","label":"GitHub"},{"icon":"/images/favicon.png","href":"https://mrdvs.com/","label":"MRDVS"}],"primary":{"type":"button","label":"Contatti","href":"/it/contact"}},"pages":[{"title":"it","href":"/it"}]},{"language":"es","footer":{"socials":{"github":"https://github.com/Lanxin-MRDVS/CameraSDK","linkedin":"https://www.linkedin.com/company/mrdvs","youtube":"https://www.youtube.com/@MRDVS-2024","website":"https://mrdvs.com/"},"links":[{"header":"Productos","items":[{"label":"Cámaras 3D de la serie S","href":"https://mrdvs.com/s-series-obstacle-avoidance-robot-cameras"},{"label":"Cámaras 3D de la serie M","href":"https://mrdvs.com/m-series-time-of-flight-camera"},{"label":"Localización de la serie V","href":"https://mrdvs.com/v2-pro-rtls-slam-solution"}]},{"header":"Soluciones","items":[{"label":"Visión para robots móviles","href":"https://mrdvs.com/humanoids-quadrupeds-robots"},{"label":"Almacén y logística","href":"https://mrdvs.com/vision-guided-robotics"},{"label":"Percepción para cortacéspedes","href":"https://mrdvs.com/solid-state-lidar-vision-fusion"}]},{"header":"Contacto","items":[{"label":"Acerca de MRDVS","href":"/es/about"},{"label":"WhatsApp","href":"https://wa.me/8613370882355"},{"label":"[email protected]","href":"mailto:[email protected]"}]}]},"navbar":{"links":[{"icon":{"style":"brands","name":"github"},"href":"https://github.com/Lanxin-MRDVS","label":"GitHub"},{"icon":"/images/favicon.png","href":"https://mrdvs.com/","label":"MRDVS"}],"primary":{"type":"button","label":"Contacto","href":"/es/contact"}},"pages":[{"title":"es","href":"/es"}]},{"language":"ru","footer":{"socials":{"github":"https://github.com/Lanxin-MRDVS/CameraSDK","linkedin":"https://www.linkedin.com/company/mrdvs","youtube":"https://www.youtube.com/@MRDVS-2024","website":"https://mrdvs.com/"},"links":[{"header":"Продукты","items":[{"label":"3D-камеры серии S","href":"https://mrdvs.com/s-series-obstacle-avoidance-robot-cameras"},{"label":"3D-камеры серии M","href":"https://mrdvs.com/m-series-time-of-flight-camera"},{"label":"Локализация серии V","href":"https://mrdvs.com/v2-pro-rtls-slam-solution"}]},{"header":"Решения","items":[{"label":"Зрение мобильных роботов","href":"https://mrdvs.com/humanoids-quadrupeds-robots"},{"label":"Склад и логистика","href":"https://mrdvs.com/vision-guided-robotics"},{"label":"Восприятие для газонокосилок","href":"https://mrdvs.com/solid-state-lidar-vision-fusion"}]},{"header":"Связаться с нами","items":[{"label":"О MRDVS","href":"/ru/about"},{"label":"WhatsApp","href":"https://wa.me/8613370882355"},{"label":"[email protected]","href":"mailto:[email protected]"}]}]},"navbar":{"links":[{"icon":{"style":"brands","name":"github"},"href":"https://github.com/Lanxin-MRDVS","label":"GitHub"},{"icon":"/images/favicon.png","href":"https://mrdvs.com/","label":"MRDVS"}],"primary":{"type":"button","label":"Связаться с нами","href":"/ru/contact"}},"pages":[{"title":"ru","href":"/ru"}]}]},"title":"Distribuire gli algoritmi di rilevamento e integrare i risultati - MRDVS","buildId":"dpl_849ArpqvBiCczQiT1Y1stNGpbqHT","deploymentId":"dpl_849ArpqvBiCczQiT1Y1stNGpbqHT","dynamics":[],"chunks":[]}