ml — Machine Learning¶
O módulo ml contém funcionalidades para carregar e executar modelos TensorFlow Lite na OpenMV Cam. O módulo expõe uma única classe de utilizador, ml.Model, que encapsula a classe C Model subjacente com conveniências adicionais do lado Python (carregamento automático de etiquetas e conversão automática de imagem em tensor).
Sub Módulos¶
class Model – Contentor de Modelo¶
- class ml.Model(path: str, *, postprocess: object = None) Model¶
Carrega um modelo TensorFlow Lite a partir de
pathpara a memória e prepara-o para inferência.pathpode ser um ficheiro no sistema de ficheiros ou o nome de um modelo incorporado na imagem de firmware.postprocess é um callable opcional de pós-processamento invocado por
Model.predictapós a inferência. Recebe(model, inputs, outputs)e pode devolver qualquer valor (por exemplo, uma lista de caixas delimitadoras). Quando fornecido, o pós-processador recebe os tensores de saída brutos do modelo (não dequantizados) por razões de desempenho.Na construção, o wrapper tenta adicionalmente carregar um ficheiro
.txtcom o mesmo nome base quepath; se encontrado, cada linha é carregada emModel.labels. Caso contrário,Model.labelséNone.- predict(inputs: list, *, callback: object = None) list¶
Executa inferência no modelo e devolve os tensores de saída.
inputs é uma lista com uma entrada por tensor de entrada do modelo. Cada entrada pode ser:
Um
ndarraycuja forma corresponde à entrada correspondente emModel.input_shape. Os valores são quantizados usando a escala e o ponto zero do tensor de entrada (os tensores de entrada float32 são passados sem alteração).Um objeto
image.Image. O wrapper encapsula-o automaticamente num objetoml.preprocessing.Normalizationpara o converter no tensor esperado.Um callable. Será invocado com
(bytearray, shape, dtype)e espera-se que preencha o bytearray com os dados do tensor de entrada.
callback é um callable opcional de pós-processamento por chamada. Quando fornecido, substitui o
postprocessdefinido no construtor apenas para esta chamada. O callback recebe(model, inputs, outputs)e o seu valor de retorno é devolvido porpredict.Devolve uma lista de saídas
ndarray, uma por tensor de saída do modelo. Se nenhum pós-processador estiver ativo, as saídas são dequantizadas parafloat32; se um pós-processador estiver ativo, os tensores de saída brutos (usando o dtype nativo de cada tensor) são passados a ele.
- input_dtype: list[str]¶
Uma lista de cadeias de um único carácter com o dtype de cada tensor de entrada:
'b'(int8),'B'(uint8),'h'(int16),'H'(uint16),'f'(float32).
- input_scale: list[float]¶
Uma lista de floats com a escala de quantização de cada tensor de entrada.
- input_zero_point: list[int]¶
Uma lista de ints com o ponto zero de quantização de cada tensor de entrada.
- output_dtype: list[str]¶
Uma lista de cadeias de um único carácter com o dtype de cada tensor de saída:
'b'(int8),'B'(uint8),'h'(int16),'H'(uint16),'f'(float32).