Pular para o conteúdo principal

API REST/HTTP

O Limelight OS possui um servidor REST/HTTP rodando em (endereço-ip):5807

LimelightLib Python é uma biblioteca de código aberto que utiliza a API HTTP/REST do Limelight.

Nota: ex. http://(endereço-ip-do-limelight):5807/results

Geral

MétodoRotaDescrição
GET/resultsRecupera dump JSON completo dos resultados de rastreamento atuais
GET/statusRecupera objeto JSON de status com temperatura, fps, nome do dispositivo, índice do pipeline, uso de CPU, uso de RAM
GET/hwreportRetorna um array JSON de relatórios completos de hardware. Um relatório de hardware contém informações legíveis como FOV, offset principal, etc.

Gerenciamento de Pipeline

MétodoRotaDescrição
GET/pipeline-defaultObtém pipeline padrão (JSON)
GET/pipeline-atindexObtém pipeline[n] da câmera (JSON). Carrega pipeline do disco. Inclua um parâmetro de URL 'index' na requisição.
POST/pipeline-switchAlterna para um pipeline diferente. Inclua um parâmetro de URL 'index' na requisição.
POST/reload-pipelineForça a câmera a recarregar o pipeline atual e todos os recursos do pipeline
POST/update-pipelineAceita JSON com uma ou mais atualizações de configurações. Defina o parâmetro de URL "flush" como 1 para salvar essas configurações no disco.
POST/upload-pipelineFaz upload de um pipeline. Envie dados JSON no corpo da requisição. Opcionalmente inclua um parâmetro 'index'. Sobrescreve o pipeline no disco

Gerenciamento de Câmera

MétodoRotaDescrição
POST/set-imumodeDefine Modo IMU (JSON)
POST/set-throttleDefine número de frames a pular entre frames processados para gerenciamento térmico
POST/set-imuassistalphaDefine alpha do filtro complementar do Modo de Assistência IMU (padrão 0.001)

Gerenciamento de Recursos

MétodoRotaDescrição
POST/upload-fieldmapFaz upload de um mapa de campo. Envie dados JSON no corpo da requisição. Opcionalmente inclua um parâmetro 'index'.
POST/upload-pythonFaz upload de código Python. Envie o código como texto simples no corpo da requisição. Opcionalmente inclua um parâmetro 'index'.
POST/upload-nnFaz upload de uma rede neural. Inclua um parâmetro 'type' ("detector" ou "classifier"), o conteúdo do arquivo no corpo da requisição, e opcionalmente inclua um parâmetro 'index'.
POST/upload-nnlabelsFaz upload de rótulos de rede neural. Inclua um parâmetro 'type' ("detector" ou "classifier"), o arquivo no corpo da requisição, e opcionalmente inclua um parâmetro 'index'.
GET/getsnapscriptnamesLista de nomes de snapscriptpro

Python e Orientação do Robô

MétodoRotaDescrição
POST/update-pythoninputsAtualiza entradas Python para pipelines SnapScript. Envie dados JSON (array) no corpo da requisição.
POST/update-robotorientationAtualiza orientação do robô. Envie dados JSON (array) no corpo da requisição. Ex. "[45,0,0,0,0,0]. O uso deste método desabilita atualizações de orientação baseadas em NetworkTables até reiniciar/reboot

Calibração

MétodoRotaDescrição
GET/cal-defaultRetorna resultado de calibração padrão
GET/cal-fileRetorna resultado de calibração personalizada (sistema de arquivos)
GET/cal-eepromRetorna resultado de calibração personalizada (eeprom)
GET/cal-latestRetorna resultado de calibração personalizada mais recente. Este resultado não é usado a menos que seja salvo no sistema de arquivos ou na eeprom
POST/cal-eepromAtualiza o resultado de calibração da eeprom. Envie dados de calibração no corpo da requisição.
POST/cal-fileAtualiza o resultado de calibração do sistema de arquivos. Envie dados de calibração no corpo da requisição.
DELETE/cal-latestExclui resultado de calibração mais recente
DELETE/cal-eepromExclui resultado de calibração da eeprom
DELETE/cal-fileExclui resultado de calibração do sistema de arquivos

Snapshots

MétodoRotaDescrição
POST/capture-snapshotCaptura um snapshot. Inclua um parâmetro de URL 'snapname' para nomear o snapshot.
POST/upload-snapshotFaz upload de um snapshot nomeado. Inclua um parâmetro de URL 'snapname' e um arquivo de imagem no corpo da requisição.
GET/snapshotmanifestRetorna uma lista de nomes de arquivos de snapshot
DELETE/delete-snapshotsExclui todos os snapshots
DELETE/delete-snapshotExclui um snapshot específico. Inclua um parâmetro 'snapname' na requisição.