v5.0.0#

A v5.0.0 é um lançamento importante. Introduz o OpenMV Viewer — uma compilação separada e apenas de leitura para exibir um produto acabado —, um novo OpenMV Cam Settings Editor, o protocolo de depuração de câmara v2 para câmaras v5.0.0 e um vasto conjunto de melhorias nos fluxos de trabalho do editor, terminal, firmware e visão computacional. É baseada no Qt Creator 14.0.2.

O salto de versão para 5.0.0 marca a chegada da geração de câmaras v5.0.0 e das ferramentas que a suportam; os projetos e fluxos de trabalho v4 existentes continuam a funcionar sem alterações.

Destaques#

  • OpenMV Viewer — uma nova variante de compilação instalada em separado que executa o IDE como um visualizador de telemetria bloqueado e apenas de leitura. Mostra o frame buffer da câmara, o terminal série e o histograma e pode executar um script fixo, mas oculta as ferramentas de criação, de IA/modelos e de definições, para que um cliente possa demonstrar um produto baseado no OpenMV sem o ambiente de desenvolvimento completo.

  • OpenMV Cam Settings Editor — um editor gráfico para o ficheiro de configuração de definições integrado na câmara, para que possa ver e alterar as definições da placa a partir de um formulário em vez de editar o ficheiro manualmente.

  • Protocolo de depuração de câmara v2 — as câmaras v5.0.0 utilizam um novo protocolo de depuração mais robusto, com validação de CRC do cabeçalho, recuperação de falhas de sequência e uma apresentação da taxa de fotogramas dividida, que reporta os FPS na câmara e os FPS de apresentação no IDE separadamente.

  • Carregar firmware personalizado a partir de um .zip — o instalador de firmware aceita agora diretamente o pacote .zip de saída da compilação de uma placa, facilitando a gravação de uma imagem de firmware personalizada ou compilada localmente.

  • Registo de depuração do protocolo no Serial Terminal — uma opção no Serial Terminal regista o protocolo de depuração da câmara com linhas legíveis e etiquetadas com emojis, para diagnosticar problemas de ligação.

  • Menu Ajuda reformulado e documentação no editor — um submenu OpenMV Docs substitui as antigas ligações simples, F1 abre a documentação do símbolo Python sob o cursor, passar o cursor sobre um nome de API mostra a sua documentação em linha, e a caixa de diálogo Acerca de foi modernizada.

Novas funcionalidades#

  • Variante de compilação OpenMV Viewer. Uma compilação em modo de visualização forçado, com a marca e instalada como OpenMV Viewer, com o seu próprio id de executável, armazenamento de definições e id de pacote, para que coexista com o IDE completo. Apresenta-se como um visualizador de telemetria apenas de leitura: Run/Stop e stop-on-connect funcionam e executam um script a partir do disco (através de -auto_run), os menus File/Edit e as Preferences permanecem, e a recuperação de firmware/ROMFS é mantida, enquanto as ferramentas de criação, as ferramentas de visão computacional para programadores, as categorias de definições de programador e os recursos de IA/modelos/documentação são removidos da compilação e da interface. O ROMFS passa a ser apenas de carregamento e é promovido para o menu Tools, e as caixas de diálogo de conclusão da atualização de firmware são tornadas genéricas (07722e78a8b, 5cd12ee260e, b97bf5447e4, 952b86de391, 1103f7988ed, f0f60261485, c743d5d67b9, b4bcdc2d71a, a37c032b6ff, 480e5668d29, 11c064cac93).

  • OpenMV Cam Settings Editor — um editor gráfico para o ficheiro de configuração de definições da câmara, aberto a partir do menu Tools (issue #205) (f55a0d7fa58, 2d7f80b03cf).

  • Protocolo de depuração de câmara v2 para câmaras v5.0.0, com validação de CRC do cabeçalho antes de qualquer campo do cabeçalho ser considerado fiável, recuperação de falhas de sequência que avança sobre pacotes perdidos em vez de bloquear, e uma leitura da taxa de fotogramas dividida na taxa na câmara e na taxa de apresentação no IDE (c377bdbaea8, a3f0488ddcb, 29108dd40f7, c15e6c02789).

  • Carregar firmware personalizado aceita um pacote .zip — escolha o zip de saída da compilação de uma placa e o IDE grava o firmware (e o ROMFS) que este contém (55e4eb2d900).

  • Registo de depuração do Serial Terminal — um botão ativa/desativa o registo de depuração por níveis do protocolo da câmara, com cada linha etiquetada com emojis e apresentada no tipo de letra de emojis para melhor legibilidade (09990c62810, 42e23c3c11e, 997705548c7, d2208de77d4).

  • Copiar/Converter o script atual — uma ação do menu Tools que copia ou converte o script atual, com uma proteção contra a gravação de um main.py/boot.py compilado (81a954f33cd).

  • Ajuda de documentação com F1 sobre o símbolo Python sob o cursor, partilhando o resolvedor de símbolos com as dicas de contexto (c341330bc16).

  • Dicas de documentação no editor — passar o cursor sobre um nome da API OpenMV mostra a sua documentação em linha, resolvida a partir dos stubs .pyi incluídos e da própria documentação do módulo, para que possa ler o que uma função, método, constante ou módulo faz sem sair do seu script (7ebde92d2a6, f225824ba13, 59ad01a364a, 02c1e61a2a6).

  • Atribuir um nome a uma câmara — um alias local do IDE que pode dar a uma câmara ligada, apresentado no lugar do nome da porta série para que câmaras idênticas possam ser distinguidas (c600158ca34).

  • Página de atalhos de teclado — a página de atalhos das Preferences é agora apresentada e filtrada para as ações que consegue efetivamente alcançar, com origem e disposição mais claras (4f5eae52e8e, 2d472fe5b40).

Melhorias no editor, terminal e interface#

  • Menu Ajuda reestruturado num submenu OpenMV Docs (abandonando as antigas ligações simples de pinout), com ligações às notas de lançamento adicionadas aos caminhos de versão dos lançamentos oficiais (e1337ff67c4, 9eacc0994e6).

  • Caixa de diálogo Acerca de modernizada — ano de copyright automático, uma tabela de logótipos de parceiros e uma ligação de uma linha às notas de lançamento (d89fb74138d).

  • O painel Frame Buffer mostra agora a leitura da resolução e uma etiqueta do modo do frame buffer ao lado do botão JPG fixo; a etiqueta do modo é apresentada a cinzento para que não pareça clicável (cb735f82337, 376b17d4e77, 39c6ffc3b26).

  • No painel do histograma, os gráficos são suavizados por splines, o painel pode comprimir-se (omitindo etiquetas e comprimindo os gráficos), e a etiqueta do canal fica ao lado das estatísticas (327324ef7e9, 9f8c7035483, d204e93d5e4).

  • Divisórias de painel acopladas — arrastar uma divisória com Ctrl/Cmd move em conjunto os separadores editor/terminal e frame buffer/histograma, e as pegas dos mini-separadores ganham um halo ao passar o cursor com uma área de agarre mais ampla (379dee250d6, 96b83984342).

  • Serial Terminal — o deslocamento automático deixa de ser refixado a cada bloco de saída, pelo que deslocar para cima durante uma saída rápida se mantém no lugar; o terminal pode executar um ficheiro a partir do disco quando não há editor (af67a076e95, bc132aef536).

  • Os comandos de documentação são nomeados por página em vez de por índice (a3201e9a4b4).

  • Alta DPI / escala fracionária — os ícones, as sobreposições e o ecrã de arranque são apresentados corretamente com fatores de escala fracionários (125%, 150% e semelhantes), e a janela principal recorda a sua geometria e ecrã entre reinícios em configurações com vários monitores (c60711e4950, 60901b6e13f, f241d2ea8ce, 54a1bc31fbd).

Firmware, placas e ferramentas#

  • Uma placa pode fixar a última versão de firmware distribuída, para que uma placa que já não recebe firmware mais recente não seja assinalada como desatualizada (bd987d32f42).

  • O texto de estado de firmware desatualizado é agora colorido a vermelho para se destacar (9b18d96bac5).

  • Sugestão de recuperação do bootloader — uma incompatibilidade de bootloader.bin sugere agora a entrada no modo de recuperação do bootloader (d46b998c76e).

  • A reprodução de vídeo é mais robusta: o caminho do FFmpeg é apresentado quando as ferramentas não o conseguem iniciar, a mensagem é mais clara quando uma arquitetura não suporta a reprodução, os formatos de entrada são consultados com ffmpeg -demuxers, e foram adicionadas alternativas de terminal para Linux (0cc0e74a438, a75ec4898d0, 28e1ef10326, 51651780723).

  • O Dataset Capture Script foi atualizado para o módulo csi (41a781651e4).

  • O assistente do instalador para Windows teve a aparência melhorada (250599d9d9e).

Correções de erros#

  • A instalação de firmware de desenvolvimento para placas .lst (AE3) coloca agora os binários referenciados na listagem no diretório de gravação, e a instalação de desenvolvimento/personalizada prepara a imagem ROMFS do pacote limpando primeiro qualquer romfs*.img obsoleto, para que o ROMFS transferido seja gravado em vez de um resíduo do editor (3cf56e98668, 43bedc8c591).

  • Os avisos do libjpeg para fotogramas truncados/corrompidos são filtrados do registo para que um fluxo com perdas não inunde o terminal (6e2a8bed6cf, a5166abbdc1).

  • A lista de exemplos deixa de mostrar o index.json interno (14ac8ca48a7).

  • As janelas de atualização de firmware e de introdução são suprimidas no modo de visualização para que uma demonstração de produto nunca solicite a substituição do firmware do cliente (7b8528c3ad6).

  • Os atalhos de teclado pendentes e exclusivos da criação, que restaram dos menus removidos, foram desativados (be3bee8bb58, 27d1afc8705).

Localização#

  • Quatro novos idiomas — indonésio, romeno, tailandês e vietnamita —, elevando o IDE para 37 idiomas traduzidos, e todos os catálogos foram atualizados, traduzidos e limpos em todos os idiomas (fcf04090843, c830e6c4de3, 5e22679923f).

Linha de comandos#

  • Os aliases de opções de estilo GNU ``–word`` são agora aceites juntamente com as formas de traço único, e a saída de -help indica a equivalência (66414213dd9, 768c5d0e159).

Suporte de plataformas e ferramentas#

  • Base do Qt Creator: 14.0.2.

  • OpenMV IDE com a versão atualizada para 5.0.0.

  • Novo: a variante de compilação OpenMV Viewer instalada em separado.

  • Suporte para Python 3.14 — o analisador parso incluído foi atualizado para 0.8.7, mantendo a conclusão de código e o servidor de linguagem a funcionar com a mais recente sintaxe do Python (578a4e39d97).

Alterações incompatíveis#

Nenhuma para os projetos existentes. O protocolo de depuração v2 aplica-se às câmaras v5.0.0; as câmaras da geração v4 continuam a utilizar o protocolo existente, e os scripts e fluxos de trabalho existentes não são afetados.