Quer adicionar efeitos natalinos divertidos com IA às suas fotos? Neste tutorial, você vai aprender a capturar imagens, detectar traços faciais e sobrepor dinamicamente gorros de Natal, chifres de rena e muito mais. Não é preciso nenhum treinamento complexo de IA — apenas modelos pré-prontos e a programação gráfica super amigável do Mind+. Vamos transformar a programação em criatividade festiva!

Objetivos
Você pode usar o UNIHIKER K10 para tirar fotos do rosto, registrar as coordenadas das feições faciais e o tamanho do rosto. Ao mesmo tempo, ao pressionar o botão B, você pode adicionar adesivos de Natal apropriados para decorar a foto.

Conhecimentos Fundamentais
1. Dominar a função de captura e armazenamento de fotos no UNIHIKER K10.
2. Dominar a função de detecção de pontos-chave faciais no UNIHIKER K10.
3. Ajustar tamanho e coordenadas dos adesivos com base no tamanho e posição reais do rosto.
Lista de Materiais
Hardware:
Software:
Mind+ Graphical Programming Software (Minimum Version Requirement: V1.8.1 RC1.0)

Uso Básico do Software Mind+
1. Abra o Mind+ e alterne para o modo offline.

2. Carregar o UNIHIKER K10: Com base nas etapas anteriores, clique em "Extensão", localize o módulo "UNIHIKER K10" em "Placa" e clique para adicioná-lo. Após clicar em "Voltar", você encontrará o UNIHIKER K10 na "Área de Comandos", completando assim o carregamento do dispositivo.

3. Conectar o UNIHIKER K10: Primeiramente, é necessário utilizar um cabo USB para conectar o UNIHIKER K10 ao computador.

Em seguida, após clicar em "Conectar Dispositivo", selecione "COM-UNIHIKER K10" para estabelecer a conexão.

Observação: O nome do dispositivo pode variar entre diferentes unidades UNIHIKER K10, mas todos terminam com K10.
No Windows 10/11, o UNIHIKER K10 não requer instalação de drivers. Entretanto, para o Windows 7, é necessária a instalação manual do driver: https://www.unihiker.com/wiki/K10/faq/#high-frequency-problem
Prática Hands-on
Vamos mergulhar na aula de hoje! Começaremos aprendendo como capturar e armazenar fotos, depois passaremos para a detecção de pontos-chave faciais no UNIHIKER K10 e adicionaremos adesivos de decoração de Natal. Pronto para começar?
Tarefa 1: Capturar, Armazenar e Exibir Fotos
Usaremos os comandos de detecção facial para capturar uma foto, armazená-la no cartão TF e exibir a foto na tela.
Tarefa 2: Detecção de Pontos-Chave Faciais
Detectaremos os dados dos pontos-chave faciais, incluindo as coordenadas das feições (olhos, nariz, boca) e o tamanho geral do rosto.
Tarefa 3: Decoração com Adesivos de Natal
Ajustaremos as coordenadas dos adesivos com base nas feições e no tamanho do rosto detectados, para que as decorações de Natal se encaixem perfeitamente no rosto.
Tarefa 1: Capturar, Armazenar e Exibir Fotos
1. Configuração do Hardware
Insira o cartão TF no slot do UNIHIKER K10. Certifique-se de que o cartão TF esteja bem encaixado no slot designado do UNIHIKER K10.

2. Preparação do Software
Certifique-se de que o Mind+ está aberto, que o código pré-definido aparece no modo gráfico Python, e que o UNIHIKER K10 foi carregado com sucesso. Agora você pode começar a escrever o programa do projeto.

3. Escrevendo o programa
PASSO 1: Chamar o Comando de Detecção Facial Primeiro, precisamos usar o comando "Ativar show de câmera" para mostrar a transmissão da câmera na tela do UNIHIKER K10.

Nota: Para mais detalhes sobre os comandos da câmera, consulte o Centro de Conhecimento.
Depois de ligar a câmera, localizamos o comando "Alternar para o modo detecção facial" para alternar a câmera para o modo de detecção facial.

Nota: Para detalhes sobre o comando de detecção facial, consulte o Centro de Conhecimento.
PASSO 2: Capturar, Armazenar e Exibir Fotos
Precisamos usar uma função de callback de evento. Primeiro, use o comando "Quando o botão A pressionar", depois o comando "Tocar áudio do cartão TF em segundo plano" para simular o som do obturador da câmera. Em seguida, use o comando "Capturar fotos no cartão TF" para tirar uma foto e salvá-la no cartão TF.

Depois de tirar a foto, precisamos exibir a foto armazenada no cartão de memória. Portanto, usamos uma variável chamada "capturar fotos" para determinar se a foto foi capturada com sucesso. Assim que a foto for tirada, desligamos a transmissão da câmera e usamos o comando "Armazenar em cache a imagem do cartão TF em X Y" para mostrar a foto recentemente capturada na tela.

Dessa forma, alcançamos a funcionalidade de capturar, armazenar fotos e exibi-las na tela. O código completo está mostrado na imagem abaixo:

4. Executar o Programa
PASSO 1: Verifique e assegure-se de que o UNIHIKER K10 está conectado ao Mind+. Certifique-se de que o endereço IP seja exibido na seção "Barra de Menu", indicando que a conexão foi estabelecida.

PASSO 2: Clique no botão "Enviar" no canto superior direito da interface.

PASSO 3: Execução do Programa
A transmissão da câmera aparecerá na tela. Quando o botão A for pressionado, uma foto será capturada e exibida na tela, como mostrado na imagem abaixo:

Tarefa 2: Detecção de Pontos-Chave Faciais
1. Escrevendo o Programa
PASSO 1: Obter os Dados dos Pontos-Chave Faciais No UNIHIKER K10, existe um comando para detectar pontos-chave do rosto. Podemos usar o comando "Obter de rosto detectado" para recuperar as coordenadas das feições faciais e o tamanho do rosto. Além disso, criaremos variáveis correspondentes para armazenar os dados dos pontos-chave faciais. Encapsularemos este comando na função "Detecção de landmarks faciais"

Nota: Para detalhes sobre o comando de detecção de pontos-chave faciais, consulte o Centro de Conhecimento.
Para obter os dados dos pontos-chave faciais da foto capturada, precisamos chamar a função “Detecção de landmarks faciais” dentro da função de callback de evento "Quando o botão A Pressionar". Isso nos permitirá recuperar os dados dos pontos-chave faciais da foto tirada.

PASSO 2: Exibir os Dados dos Pontos-Chave Faciais Para determinar a posição dos adesivos de Natal, precisamos conhecer os dados dos pontos-chave faciais obtidos anteriormente. Portanto, precisamos exibir esses dados junto com a foto. No passo anterior, armazenamos os dados em variáveis correspondentes. Agora, podemos usar o comando "texto em cache na linha cor"

O código completo do módulo de detecção de pontos-chave faciais é o seguinte:

2. Executar o Programa
PASSO 1: Conecte o UNIHIKER K10.
PASSO 2: Clique no botão "Enviar" no canto superior direito da interface.
PASSO 3: Pressione o botão A e observe a tela. Você deverá ver os dados dos pontos-chave faciais exibidos junto com a foto.

Tarefa 3: Decoração com Adesivos de Natal
Nesta tarefa, precisamos ajustar a posição e o tamanho do adesivo com base nas coordenadas das feições faciais e no tamanho do rosto, de modo que as decorações de Natal se alinhem corretamente ao rosto.
1. Escrevendo o Programa
PASSO 1: Ajustar a Posição do Adesivo Vamos usar o adesivo de chifres de rena como exemplo. Precisamos ajustar a posição do adesivo com base na localização do rosto. Para determinar a posição do rosto, usaremos um dos dados de pontos-chave faciais obtidos anteriormente como ponto de referência. Aqui, escolhemos as coordenadas X e Y do Olho Esquerdo para determinar onde posicionar o adesivo de chifres de rena.

É importante observar que, no UNIHIKER K10, o ponto de referência para as imagens é o canto superior esquerdo. Isso significa que as coordenadas X e Y se referem à posição do canto superior esquerdo da imagem. Compreender isso nos ajudará a ajustar melhor a posição do adesivo. Além disso, quando o UNIHIKER K10 está na orientação vertical, as coordenadas correspondentes da tela são mostradas no diagrama abaixo:

Após os ajustes, determinamos as coordenadas relativas X e Y para o adesivo de chifres de rena com base no olho esquerdo como ponto de referência. A coordenada X é calculada como (Olho Esquerdo X - 45), e a coordenada Y é calculada como (Olho Esquerdo Y - 150). O comando do programa é o seguinte:

PASSO 2: Ajustar o Tamanho do Adesivo com Base no Tamanho do Rosto
Na fotografia real, o tamanho do rosto pode variar. Portanto, não podemos simplesmente tratar o adesivo como uma imagem de tamanho fixo para colocá-lo sobre o rosto. Abaixo está um exemplo do mesmo adesivo aplicado em rostos de tamanhos diferentes, mostrando que isso cria um efeito artificial.

Portanto, precisamos ajustar o tamanho do adesivo de acordo com os diferentes tamanhos de rosto. Usando o parâmetro comprimento do rosto, podemos determinar o tamanho do rosto. Com base nesse comprimento, classificaremos o rosto em três faixas de tamanho: 65–85, 85–100 e 100–115. Para cada um desses tamanhos de rosto, usaremos um adesivo de chifres de rena correspondente, em três tamanhos diferentes.

Usamos instruções condicionais para exibir tamanhos diferentes do adesivo de chifres de rena para os três tamanhos de rosto. É importante observar que as coordenadas X e Y do adesivo serão diferentes dependendo do tamanho do rosto. Essas coordenadas precisam ser ajustadas por meio de repetidos testes. Após vários testes, podemos determinar as coordenadas X e Y ideais para cada tamanho de adesivo. Os comandos relevantes do programa para esse processo são os seguintes:

Para aumentar a atmosfera da foto, precisamos adicionar uma moldura de Natal à imagem. Além disso, configuraremos para que, quando o botão B for pressionado, os dados dos pontos-chave faciais sejam apagados da tela e o adesivo de Natal seja exibido. Para melhorar a legibilidade do programa principal, integraremos a lógica de troca de adesivos em uma função chamada "Efeitos Especiais". Os comandos do programa são os seguintes:

O diagrama do efeito é o seguinte:

PASSO 3: Alternar Adesivos de Natal Aleatoriamente Para alternar entre diferentes adesivos de Natal, primeiro precisamos seguir os passos da tarefa anterior. Isso inclui ajustar os tamanhos dos adesivos de acordo com os diferentes tamanhos de rosto e depurar as coordenadas para que os adesivos apareçam de forma mais natural. O código relevante do programa é o seguinte:

Para alternar aleatoriamente entre diferentes estilos de adesivos de Natal, definimos uma variável chamada "número aleatório". Quando o botão B for pressionado, o "número aleatório" gerará um valor entre 1 e 3, onde cada valor corresponde a um estilo diferente de adesivo de Natal. Abaixo está o código completo do programa:

2. Executar o Programa
Clique em "Enviar", tire uma foto e depois pressione o botão B para alternar aleatoriamente entre diferentes estilos de adesivos de Natal. O efeito é o seguinte:

Centro de Conhecimento
1. Comandos da Câmera

2. Comandos de Detecção Facial

3. Comandos de Pontos-chave Faciais

Com esta lição prática, você criou uma câmera de IA com reconhecimento facial cheia de magia natalina. Continue explorando STEM e solte sua criatividade com o UNIHIKER K10!
📚 Confira nossa coletânea de projetos:
Explore 9 Projetos Divertidos com Apenas Uma UNIHIKER K10
🐶 Lição 1 Cachorro de Estimação
🎮 Lição 2 Jogo de Arcade Tapa-Toupeira
🛍️ Lição 4 Supermercado Automatizado
🤖 Lição 6 Assistente Residencial Inteligente
💬 Criamos agora uma comunidade exclusiva no WhatsApp para usuários de língua portuguesa do Brasil!
Entre no grupo e fique por dentro das novidades mais recentes: https://chat.whatsapp.com/KTCdPBQDDWTGHlS5LoO8HC
