Como definir objetivos para o teu projeto de visão computacional#
Para definir um projeto de visão computacional, redige uma declaração do problema que identifique a questão central, o âmbito, as partes interessadas e as restrições; define objetivos mensuráveis e com prazos; e associa o problema à tarefa de visão computacional que determinará as decisões sobre o modelo, o conjunto de dados e a implementação. Este guia explica cada etapa com um exemplo prático.
Assista: Como definir o objetivo de um projeto de visão computacional | Conexão entre declaração do problema e tarefas VisionAI 🚀
Para uma visão geral de todo o fluxo de trabalho, desde a recolha de dados até à implementação, consulta o nosso guia sobre as principais etapas de um projeto de visão computacional.
Como redigir uma declaração do problema de visão computacional#
Uma declaração do problema clara é o primeiro grande passo para encontrar a solução mais eficaz. Tem quatro partes:
- Identifica a questão central: identifica o desafio específico que o teu projeto de visão computacional pretende resolver.
- Define o âmbito: estabelece os limites do teu problema.
- Considera os utilizadores finais e as partes interessadas: identifica quem será afetado pela solução.
- Analisa os requisitos e as restrições do projeto: avalia os recursos disponíveis (tempo, orçamento, pessoal) e identifica eventuais restrições técnicas ou regulamentares.
Exemplo de uma declaração de problema empresarial#
Considera um projeto de visão computacional no qual pretendes estimar a velocidade dos veículos numa autoestrada. A questão central é que os métodos atuais de monitorização da velocidade são ineficientes e propensos a erros devido a sistemas de radar desatualizados e processos manuais. O projeto pretende desenvolver um sistema de visão computacional em tempo real que possa substituir os sistemas antigos de estimativa de velocidade.
Os principais utilizadores incluem as autoridades de gestão do tráfego e as forças de segurança, enquanto as partes interessadas secundárias são os responsáveis pelo planeamento das autoestradas e o público, que beneficia de estradas mais seguras. Os principais requisitos incluem avaliar o orçamento, o tempo e o pessoal, bem como responder a necessidades técnicas, como câmaras de alta resolução e processamento de dados em tempo real. Além disso, é necessário considerar as restrições regulamentares relativas à privacidade e à segurança dos dados.
Definir objetivos mensuráveis#
Definir objetivos mensuráveis é essencial para o sucesso de um projeto de visão computacional. Os objetivos eficazes seguem os critérios SMART:
| Critério | O que significa |
|---|---|
| Específico | Defina metas claras e detalhadas. |
| Mensurável | Garanta que os objetivos possam ser quantificados. |
| Alcançável | Defina metas realistas dentro das suas capacidades. |
| Relevante | Alinhe os objetivos às metas gerais do seu projeto. |
| Com prazo definido | Defina prazos para cada objetivo. |
No exemplo de estimativa de velocidade em rodovias, os objetivos SMART poderiam ser:
- Alcançar pelo menos 95% de precisão na detecção de velocidade em seis meses, usando um conjunto de dados com 10.000 imagens de veículos.
- O sistema deve conseguir processar transmissões de vídeo em tempo real a 30 quadros por segundo, com atraso mínimo.
Ao definir metas específicas e quantificáveis, você pode acompanhar o progresso com eficiência, identificar áreas que precisam de melhorias e garantir que o projeto continue no rumo certo.
Como escolher a tarefa de visão computacional certa#
A descrição do problema ajuda você a determinar qual tarefa de visão computacional pode resolvê-lo. As tarefas mais populares incluem classificação de imagens, detecção de objetos e segmentação de imagens — consulte a página de tarefas da Ultralytics para ver uma comparação detalhada.
Por exemplo, se o problema for monitorar a velocidade dos veículos em uma rodovia, a tarefa é detecção de objetos, executada no modo de rastreamento. O rastreamento atribui a cada veículo detectado um ID persistente ao longo dos quadros do vídeo, o que é necessário para calcular a velocidade.
A detecção, por si só, não basta nesse caso: ela localiza os veículos em cada quadro, mas não mantém a identidade de cada veículo entre os quadros — e, sem essa identidade, o sistema não consegue medir o movimento ao longo do tempo. O modo de rastreamento adiciona essa identidade. Depois de identificar a tarefa de visão computacional adequada, ela orienta vários aspectos essenciais do projeto, como a seleção do modelo, a preparação do conjunto de dados e as abordagens de treinamento do modelo.
O que vem primeiro: modelo, dados ou abordagem de treinamento?#
A ordem de seleção do modelo, preparação do conjunto de dados e abordagem de treinamento depende das particularidades do seu projeto:
| Sua situação | Comece por | Exemplo |
|---|---|---|
| Problema e objetivos bem definidos | Seleção do modelo | Para um sistema de monitoramento de tráfego que estima a velocidade dos veículos, escolha um modelo de detecção para executar no modo de rastreamento, reúna e anote vídeos de rodovias e, em seguida, treine usando técnicas de processamento de vídeo em tempo real. |
| Dados exclusivos ou limitados | Preparação do conjunto de dados | Para um sistema de reconhecimento facial com um conjunto de dados pequeno, anote os dados primeiro e, em seguida, selecione um modelo que funcione bem com dados limitados — como um modelo pré-treinado para aprendizado por transferência — e planeje o aumento de dados para ampliar o conjunto de dados. |
| A experimentação é essencial (pesquisa) | Abordagem de treinamento | Em um projeto que explora novos métodos para detectar defeitos de fabricação, experimente primeiro com um subconjunto pequeno de dados. Quando encontrar uma técnica promissora, selecione um modelo adaptado a essas descobertas e prepare um conjunto de dados abrangente. |
Se você começar pelos dados, a Plataforma Ultralytics simplifica a organização do conjunto de dados, a anotação e o treinamento à medida que seu projeto evolui.
Como as opções de implantação afetam seu projeto#
As opções de implantação do modelo afetam de forma decisiva o desempenho do seu projeto de visão computacional, então leve-as em conta desde o início. O ambiente de implantação precisa ser capaz de lidar com a carga computacional do seu modelo:
| Opção de implantação | Ideal para | Exemplos de tecnologias |
|---|---|---|
| Dispositivos de borda | Smartphones e dispositivos IoT com recursos computacionais limitados; modelos leves | LiteRT, ONNX Runtime |
| Servidores na nuvem | Modelos complexos com maiores exigências computacionais; hardware que pode ser dimensionado conforme o projeto | AWS, Google Cloud, Azure |
| Servidores locais | Necessidade de alto nível de privacidade de dados e segurança; controle total sobre os dados e a infraestrutura | Servidores GPU autogerenciados |
| Soluções híbridas | Equilíbrio entre desempenho, custo e latência; processamento na borda combinado com análise na nuvem | Combinação de ambientes de execução na borda e plataformas na nuvem |
Cada opção oferece benefícios e desafios diferentes, e a escolha depende dos requisitos específicos do projeto, como desempenho, custo e segurança.
Conclusão#
Um projeto de visão computacional bem-sucedido começa com uma descrição clara do problema, objetivos SMART mensuráveis e a tarefa de visão computacional certa — essas decisões orientam tudo o que vem depois, da seleção do modelo à implantação. Como próximo passo, aprenda a coletar e anotar dados ou converse sobre seu projeto com outros desenvolvedores no GitHub e no servidor do Discord da Ultralytics.
Perguntas frequentes#
Uma descrição clara do problema identifica a questão central que o projeto resolve, seu escopo, os usuários finais e as partes interessadas, além das restrições de recursos e regulamentares. Trabalhe essas quatro partes na ordem e, em seguida, valide a descrição com as partes interessadas antes de tomar decisões técnicas. Consulte Como escrever uma descrição de problema de visão computacional para ver a explicação completa e um exemplo prático.
Associe o resultado necessário para o problema à tarefa que o produz: um único rótulo por imagem indica classificação de imagens, a localização de objetos indica detecção de objetos, limites em nível de pixel indicam segmentação de imagens, e identidades mantidas ao longo dos quadros de vídeo exigem esse mesmo modelo de detecção executado no modo de rastreamento. Por exemplo, monitorar a velocidade dos veículos exige rastreamento, pois a velocidade é calculada com base no movimento de cada veículo ao longo do tempo. Consulte a página de tarefas da Ultralytics para ver todas as tarefas compatíveis.
Use os critérios SMART: específico, mensurável, alcançável, relevante e com prazo definido. Por exemplo: "Alcançar 95% de precisão na detecção de velocidade em seis meses usando um conjunto de dados com 10.000 imagens de veículos." Essa abordagem ajuda a acompanhar o progresso e identificar áreas que precisam de melhorias. Saiba mais sobre como definir objetivos mensuráveis.
Não, os modelos pré-treinados não "se lembram" de classes no sentido tradicional. Eles aprendem padrões com conjuntos de dados enormes e, durante o treinamento personalizado (ajuste fino), esses padrões são ajustados à sua tarefa específica. A capacidade do modelo é limitada, e o foco em novas informações pode substituir parte do que ele aprendeu anteriormente.
Se você quiser usar as classes para as quais o modelo foi pré-treinado, uma abordagem prática é usar dois modelos: um mantém o desempenho original e o outro passa por ajuste fino para sua tarefa específica. Assim, você pode combinar as saídas dos dois modelos. Há outras opções, como congelar camadas, usar o modelo pré-treinado como extrator de características e criar ramificações específicas para cada tarefa, mas são soluções mais complexas que exigem mais experiência.
As opções de implantação determinam quais tamanhos e formatos de modelo são viáveis, então elas influenciam seu projeto desde o início. Dispositivos de borda precisam de modelos leves executados em formatos e ambientes de execução como LiteRT ou ONNX Runtime; servidores na nuvem lidam com modelos complexos em hardware escalável; servidores locais oferecem controle total dos dados para projetos sensíveis à privacidade; e configurações híbridas equilibram as duas opções. Compare-as na tabela de opções de implantação ou consulte o guia de opções de implantação de modelos para obter detalhes.
Os desafios mais comuns incluem:
- Descrições de problema vagas ou amplas demais.
- Objetivos irrealistas.
- Falta de alinhamento entre as partes interessadas.
- Compreensão insuficiente das restrições técnicas.
- Subestimar os requisitos de dados.
Enfrente esses desafios com pesquisa inicial aprofundada, comunicação clara com as partes interessadas e refinamento iterativo da descrição do problema e dos objetivos. Para conhecer o fluxo de trabalho completo do projeto, consulte as etapas principais de um projeto de visão computacional.