Site anterior
Aula 8 / 8

Como a IA consegue diferenciar cachorros de gatos?

Treine um classificador de imagens e depois conecte as previsões dele a ações do robô.

13–15 anos
App que você vai usarCuroAI · Aprendizado de máquinaVersão web
Como a IA consegue diferenciar cachorros de gatos?

Aprenda sobre IA

O que é aprendizado supervisionado?

A IA aprende padrões a partir de muitas fotos de cachorros e gatos com rótulos, para conseguir diferenciar as duas classes.

Assista ao vídeo de referência (em coreano) ↗

Como a IA aprende a reconhecer cachorros e gatos?

  1. 1. Reunir exemplosReúna muitas fotos de cachorros e gatos.
  2. 2. Encontrar padrõesA IA compara características como o formato das orelhas e do rosto.
  3. 3. Aprender padrõesA IA aprende os padrões que ajudam a diferenciar cachorros de gatos.
Previsão
Cachorro92%
Gato8%
São valores de exemplo, não indicam a precisão. Poucas fotos ou fotos borradas podem confundir a IA.

Montar

Vamos montar um cachorro e um gato!

Bloco motor DC ×2Mexe o rabo do cachorro e do gato
ComandoO que faz
Girar o motor: para a esquerdaGira sem parar para a esquerda.
Girar o motor: para a direitaGira sem parar para a direita.
Girar para a esquerda por 1 segundoGira para a esquerda pelo tempo definido.
Girar para a direita por 1 segundoGira para a direita pelo tempo definido.
Desligar o motorPara o motor.
Bloco de somFaz o som do cachorro
ComandoO que faz
Tocar notaToca uma nota musical.
Tocar nota por 0,25 tempoDefine a duração da nota em tempos.
Tocar efeito sonoroToca um efeito sonoro pelo buzzer.
Tocar efeito por 0,25 tempoDefine a duração do efeito em tempos.
Bloco LEDMostra como o gato está se sentindo
ComandoO que faz
Mostrar pontos no LEDDesenha um padrão de pontos personalizado.
Mostrar texto: AMostra letras no bloco LED.
Mostrar número: 1Mostra números no bloco LED.
Mostrar ícone: CoraçãoMostra um ícone pronto.
Limpar a tela do LEDApaga os pontos do LED.

Monte o cachorro e o gato

Ensine a IA

Abra o CuroAI

Abra o CuroAI Studio ↗

Adicione a extensão de aprendizado de máquina

Abra “Extensions” (Extensões) e selecione “Cubroid Machine Learning”.

Crie três classes

Crie três classes: Cachorro, Gato e Fundo.

O que é um rótulo? É o nome da classe que diz à IA o que um exemplo mostra.

15+ exemplos variados por classe

Cachorro
Gato
Fundo

Dê nome às três classes

Dê um nome a cada rótulo e clique uma vez em cada bloco de nome para salvar.

Por que treinar o Fundo? A IA precisa de uma classe para cenas sem cachorro nem gato.

name label [1 v] as [Cachorro] :: #52b98a

name label [2 v] as [Gato] :: #52b98a

name label [3 v] as [Fundo] :: #52b98a

Reúna exemplos de treinamento variados

Reúna 15 ou mais exemplos variados por classe com os blocos “train label” (treinar rótulo). Varie o ângulo e o fundo.

Ao reunir exemplos de uma classe, não deixe outros animais aparecerem na câmera.

train label [1 v] :: #52b98a

train label [2 v] :: #52b98a

train label [3 v] :: #52b98a

Conecte os blocos (número do grupo)

Ligue os blocos, digite o mesmo número do adesivo do bloco e confirme.

Group Number33

Programe e execute

Qual bloco faz o quê?

  • Motor DC 1Rabo do cachorro
  • Motor DC 2Rabo do gato
  • Bloco LEDExpressão do gato
  • Bloco de somSom do cachorro

Conecte as previsões às ações

CACHORRO
  • Tocar um efeito sonoro
  • Girar o motor 1 para a esquerda / direita
  • Parar o motor 1
GATO
  • Mostrar um coração no LED
  • Girar o motor 2 para a esquerda / direita
  • Parar o motor 2; limpar o LED
FUNDO
  • Parar o motor 1
  • Parar o motor 2
  • Limpar a tela do LED

Confira o programa completo

Primeiro, clique nos blocos de nome e de treinamento. Depois, os blocos “when received label” (quando receber o rótulo) rodam sozinhos toda vez que a IA reconhece uma classe.

CACHORRO
name label [1 v] as [Cachorro] :: #52b98a

train label [1 v] :: #52b98a

when received label: [1 v] :: hat #52b98a
play note [Small effect v] :: sound
turn DC Motor Block 1 (1)for [rotate left v] seconds :: motion
wait (1) seconds :: control
turn DC Motor Block 1 (1)for [rotate right v] seconds :: motion
wait (1) seconds :: control
turn DC Motor Block 1 off :: motion
GATO
name label [2 v] as [Gato] :: #52b98a

train label [2 v] :: #52b98a

when received label: [2 v] :: hat #52b98a
display [♥ v] :: looks
turn DC Motor Block 2 (1)for [rotate left v] seconds :: motion
wait (1) seconds :: control
turn DC Motor Block 2 (1)for [rotate right v] seconds :: motion
wait (1) seconds :: control
turn DC Motor Block 2 off :: motion
clear display :: looks
FUNDO
name label [3 v] as [Fundo] :: #52b98a

train label [3 v] :: #52b98a

when received label: [3 v] :: hat #52b98a
turn DC Motor Block 1 off :: motion
turn DC Motor Block 2 off :: motion
clear display :: looks

Treine a IA com 15 ou mais exemplos variados por classe antes de testar. Confira as mudanças de rótulo, o tempo de espera e a direção do motor.

Try it out

Turn on the camera and show a dog photo, then a cat photo, to the camera. You can print the photos or show them on another device's screen. Check that the robot's movement changes with the label the AI recognises.

  1. Show a dog photoA sound effect plays and the dog's tail (motor 1) wags left and right.
  2. Show a cat photoA heart appears on the cat's face (LED) and the cat's tail (motor 2) wags.
  3. Take the photo awayWith no dog or cat (background), the motors stop and the LED display clears.

If the movement doesn't change reliably, collect more example photos for that class and train again. Try a few more times at different distances and lighting.

Quiz rápido

QQual é o método de aprendizado que usa exemplos com rótulos?

Ver a resposta

Aprendizado supervisionado — A IA aprende com exemplos que têm rótulos de classe.

Montou, programou e testou? Toque para salvar seu progresso.