Detecção de objetos
Declarar a instância
Se acrescentares um bloco de Detecção de objetos(ObjectDetection) à área de trabalho, no código Python é inserida automaticamente a declaração de instância seguinte:
object_detection = ObjectDetection(0)
# se existirem várias instâncias
object_detection_1 = ObjectDetection(1)Parâmetros
| Nome | Tipo | Descrição | Intervalo / Tipo | Valor predefinido |
|---|---|---|---|---|
| index | Opção de lista | Número da instância (começa em 0) | inteiro ≥ 0 | 0 |
Definir a câmara
Define a câmara para a deteção de objetos.

Parâmetros
| Nome | Tipo | Descrição | Intervalo / Tipo | Valor predefinido |
|---|---|---|---|---|
| unit | Opção de lista | Nome do dispositivo de câmara | Etiqueta de câmara do sistema | - |
Python
object_detection = ObjectDetection(0)
object_detection.device('')Carregar o modelo de objetos
Carrega o modelo de objetos treinado. Este passo é indispensável para usar as funções do módulo «Detecção de objetos».

Parâmetros
| Nome | Tipo | Descrição | Intervalo / Tipo | Valor predefinido |
|---|---|---|---|---|
| wait | Caixa de verificação | Aguardar que o carregamento termine | TRUE / FALSE | TRUE |
Python
object_detection = ObjectDetection(0)
object_detection.load_model(wait=True)Definir número máximo de objetos
Determina quantos objetos podem ser encontrados no máximo. O intervalo do número de objetos é 0 ~ 10.

Parâmetros
| Nome | Tipo | Descrição | Intervalo / Tipo | Valor predefinido |
|---|---|---|---|---|
| data | Entrada (bloco) | Número máximo de objetos | inteiro 0 ~ 10 | - |
Python
object_detection = ObjectDetection(0)
object_detection.max_objects(5)Definir o limiar de confiança
Define a probabilidade (confiança) mínima para a deteção de objetos. Só são mostrados no ecrã os objetos com uma probabilidade (confiança) acima desse valor. O intervalo da probabilidade (confiança) é 0 ~ 1.

Parâmetros
| Nome | Tipo | Descrição | Intervalo / Tipo | Valor predefinido |
|---|---|---|---|---|
| data | Entrada (bloco) | Limiar de confiança | decimal 0 ~ 1 | - |
Python
object_detection = ObjectDetection(0)
object_detection.confidence_threshold(0.5)Detetar objeto uma vez
Procura os objetos na imagem atual e marca-os exatamente uma vez.

Parâmetros
(nenhum)
Python
object_detection = ObjectDetection(0)
object_detection.detect_once()Iniciar / parar a deteção contínua de objetos
Segue os objetos na imagem atual continuamente e marca-os no ecrã.

Parâmetros
| Nome | Tipo | Descrição | Intervalo / Tipo | Valor predefinido |
|---|---|---|---|---|
| unit | Opção de lista | Ação | iniciar(start), parar(stop) | - |
Python
object_detection = ObjectDetection(0)
# unit = "start"
object_detection.detect_continuous()
# unit = "stop"
object_detection.stop()Mostrar o resultado
Determina se o resultado da deteção de objetos é mostrado na imagem da câmara ou não.

Parâmetros
| Nome | Tipo | Descrição | Intervalo / Tipo | Valor predefinido |
|---|---|---|---|---|
| on | Opção de lista | Visualização ON / OFF | mostrar(on=True), ocultar(off=False) | TRUE |
Python
object_detection = ObjectDetection(0)
object_detection.display(True)
object_detection.display(False)Posição dos objetos
Devolve a posição e o tamanho do objeto indicado.

Parâmetros
| Nome | Tipo | Descrição | Intervalo / Tipo | Valor predefinido |
|---|---|---|---|---|
| unit | Opção de lista | Nome do objeto | 80 classes de objeto ('person', 'bicycle', 'car', 'motorcycle', 'airplane', 'bus', 'cat', 'dog', 'apple', 'cup', 'laptop', 'cell_phone', etc.) | - |
| pos | Opção de lista | Coordenada | x, y | - |
Python
object_detection = ObjectDetection(0)
object_detection.object('person', 'x')
object_detection.object('bicycle', 'y')Retângulo do objeto
Devolve a posição e o tamanho do retângulo que envolve a zona do objeto indicado.

Parâmetros
| Nome | Tipo | Descrição | Intervalo / Tipo | Valor predefinido |
|---|---|---|---|---|
| unit | Opção de lista | Nome do objeto | 80 classes de objeto | - |
| pos | Opção de lista | Dado do retângulo | min_x, max_x, min_y, max_y, width, height, area | - |
Python
object_detection = ObjectDetection(0)
object_detection.object('person', 'width')
object_detection.object('car', 'area')Distância entre dois objetos
Devolve a distância entre duas classes de objeto.

Parâmetros
| Nome | Tipo | Descrição | Intervalo / Tipo | Valor predefinido |
|---|---|---|---|---|
| unit1 | Opção de lista | Nome do primeiro objeto | 80 classes de objeto | - |
| unit2 | Opção de lista | Nome do segundo objeto | 80 classes de objeto | - |
| type | Opção de lista | Tipo de distância | distância (omitido ou None), distância horizontal(horizontal), distância vertical(vertical) | None |
Python
object_detection = ObjectDetection(0)
object_detection.get_distance('person', 'bicycle') # distância
object_detection.get_distance('person', 'car', 'horizontal') # distância horizontalConfiança do objeto
A probabilidade (confiança) de o objeto escolhido ter sido reconhecido corretamente

Parâmetros
| Nome | Tipo | Descrição | Intervalo / Tipo | Valor predefinido |
|---|---|---|---|---|
| unit | Opção de lista | Nome do objeto | 80 classes de objeto | - |
Python
object_detection = ObjectDetection(0)
object_detection.object_confidence('person')Estado de carregamento do modelo de objetos
Devolve o estado de carregamento do modelo de objetos.
Se ainda não estiver carregado, devolve 0; durante o carregamento, 1; depois de carregado, 2.

Parâmetros
(nenhum)
Python
object_detection = ObjectDetection(0)
object_detection.model_state()Objeto detetado?
Se foi encontrado um objeto

Parâmetros
(nenhum)
Python
object_detection = ObjectDetection(0)
object_detection.detected()Determinado objeto detetado?
Se o objeto escolhido foi encontrado

Parâmetros
| Nome | Tipo | Descrição | Intervalo / Tipo | Valor predefinido |
|---|---|---|---|---|
| unit | Opção de lista | Nome do objeto | 80 classes de objeto | - |
Python
object_detection = ObjectDetection(0)
object_detection.object_detected('person')