di3goleite / desafio-visual-recognition

Bluegame: Desafio Visual Recognition

Geek Repo:Geek Repo

Github PK Tool:Github PK Tool

Bluegame: Desafio Visual Recognition

Este é o segundo desafio do bluegame, cada vez o seu alienware está mais próximo. Leia atentamente as instruções abaixo e boa sorte!

Passo a Passo

  1. Vocé precisará de uma conta na IBM Cloud. Caso ainda não tenha, corra e crie logo a sua clicando aqui.

  2. Baixe e instale a ferramenta Cloud-foundry CLI, caso ainda não tenha feito.

  3. Faça um fork deste projeto e clone (o fork que você acabou de criar) para sua máquina.

  4. Crie o serviço Visual Recognition (Free) em sua conta clicando aqui. Permaneça na página para qual foi direcionado após a criação do serviço.

  5. Clique em Service credentials, agora clique em New Credential (o botão azul que fica do lado direito da página). Após aparecer a modal de criação (modal com título Add new credential), apenas clique em Add.

  6. Uma vez criada a credencial, clique na action View credentials. Copie o JSON gerado para um arquivo temporário, logo iremos usá-lo.

  7. Ainda na mesma página, volte para a sessão Manage.

  8. Clique em Visual Recognition Tool (Beta). Caso abra uma tela de login, clique em Log in with IBM ID.

  9. Lembra do arquivo temporário contendo o JSON que você acabou criar? Copie o valor da chave api_key, clique no botão roxo onde está escrito "API Key" e cole. Pronto agora iremos criar nosso classificador. Detalhe muito importante, é pedido um tempo de aproximadamente 5 minutos para que sua nova api key seja ativada, deste modo apenas aguarde um momento para conseguir prosseguir.

  10. Para este desafio usaremos Star Wars como tema, para isso você irá precisar de pelo menos 10 imagens dos seguintes personagens:

  • Darth Vader
  • Luke Skywalker
  • Chewbacca
  • Leia Organa
  • Yoda
  1. Esse passo é opcional mas pode melhorar seu classificador. Pesquise por imagens que sejam parecidas com as dos personagens do passo 10 mas não sejam eles de fato. Por exemplo, um cachorro que pareça o Chewbacca.

  2. Agora que já tem as imagens crie um arquivo zip para cada personagem, por exemplo Yoda.zip. Caso tenha efetuado o passo 11, crie um zip contendo todas as imagens encontradas (imagens parecidas com as dos personagens, mas que não sejam eles de fato).

  3. Clique em Create classifier e escolha um nome para seu classificador.

  4. Precisamos criar uma classe para cada personagem. Crie as seguintes classes (para adicionar mais boxes clique no botão Add Class que está no cando inferior esquerdo):

    • Darth Vader
    • Luke Skywalker
    • Chewbacca
    • Leia Organa
    • Yoda
  5. Agore iremos fazer o upload de cada arquivo zip criado no passo 12 para a IBM Cloud. Note que o nome da classe que criamos é idêntico ao nome dos personagens, desta forma faça o upload do arquivo zip de cada personagem para sua respectiva classe e clique em Create. Caso tenha feito o passo 11, faça o upload do arquivo zip contendo todas a imagens similares para a classe Negative que é mostrada na tela e clique em Create.

  6. Após criado seu classificador, será mostrado na tela que ele esta em processo de training. Quando este mudar para ready, prossiga para o passo 17.

  7. Precisamos agora copiar o identificador do seu classificador que é gerado a patir do nome que você escolheu. Por exemplo, se escolheu Star Wars como nome para seu clasificador, o id gerado será algo como StarWars_1234567890. Ele é mostrado na box do seu classificador em cinza, logo abaixo do nome do classificador. Copie o valor do identificador para o arquivo temporário que criamos no passo 6.

  8. Crie um arquivo chamado .env no diretório root do repo clonado, usando o arquivo env.sample como template, usando o comando:

cp env.sample .env

O arquivo .env deve conter, em um primeiro momento, o seguinte conteúdo:

    VR_API_KEY=
    VR_CLASSIFIER_ID=
  1. Lembra do arquivo temporário? Agora iremos usá-lo. Copie o valor de api_key, e do identificador que adicionamos no arquivo no passo 17 para as respectivas variáveis VR_API_KEY e VR_CLASSIFIER_ID no arquivo .env. Agora o arquivo .env deverá estar assim:
  VR_API_KEY=<VALOR de api_key COPIADO SEM ÁSPAS>
  VR_CLASSIFIER_ID=<IDENTIFICADOR DO CLASSIFICADOR>
  1. Estamos quase lá. Agora e dite o arquivo manifest.yml e mude <sua-id> para que seja a mesma id que você recebeu em seu email de inscrição. Esse passo é muito importante para posterior validação de seu desafio.
---
applications:
  - name: <sua-id>-visualrecognition
    path: .
    memory: 256M
    instances: 1
    buildpack: sdk-for-nodejs
    route: mybluemix.net
    command: npm start
    disk_quota: 1024M
  1. A partir de agora você precisa instalar (caso ainda não tenha) o NodeJS e o geranciador de pacotes NPM. Siga as instruções disponíveis em https://docs.npmjs.com/getting-started/installing-node. Detalhe muito importante, você precisa pelo menos da versão 8.9.4 do node.

  2. Com tudo instalado. Execute o seguinte comando para instalar as dependências do projeto:

npm install
  1. Para executar a aplicação localmente execute o comando:
npm run dev
  1. Acesse o endereço http://localhost:8080.

  2. Para testar sua applicação, envie uma das imagens que usou no classificador e verifique se a resposta está correta, caso não esteja, verifique se efetuou corretamente o passo 15.

  3. Precisamos agora logar na IBM Cloud, para isto execute o seguinte comando.

cf api https://api.ng.bluemix.net
cf login
  1. Após feito o login, execute o seguinte comando para fazer o deploy de sua aplicação.
    npm run build && cf push
  1. Veja que legal, você consiguiu terminar o desafio, agora acesse a página do bluegame no facebook e diga para o bot: acabei.

About

Bluegame: Desafio Visual Recognition


Languages

Language:Vue 50.7%Language:JavaScript 41.5%Language:HTML 7.4%Language:CSS 0.4%