Forum Replies Created
- AuthorPosts
Olá Rafael!
Em português o que eu mais indicaria é o livro “Introdução à Visão Computacional: Uma abordagem prática com Python e OpenCV” do Felipe Barello, é um livro bem didático. Se o seu foco é Python e OpenCV então é melhor ainda pois são essas tecnologias que ele usa para os exemplos práticos.
Porém se quiser ir mais a fundo vou sugerir alguns livros em inglês, recomendo o “Computer Vision: Models, Learning, and Inference”, do Simon J. D. Prince, que é bastante recomendado pelo pessoal de visão computacional. Ele está disponível aqui: http://www.computervisionmodels.com/
Outro bastante recomendado: “Computer Vision: Algorithms and Applications”.
Também tem outros livros interessantes:
– “Concise Computer Vision: An Introduction into Theory and Algorithms” (excelente livro de introdução à área)
– “Build Deeper: The Path to Deep Learning” (não é com foco em visão computacional porém possui alguns exemplos práticos de aplicações bem modernas que envolvem essa área)- This reply was modified 4 years, 3 months ago by
Gabriel Alves.
Olá Rafael!
Esse erro geralmente ocorre quando o programa não consegue carregar corretamente o arquivo xml do haarcascade, seja porque o nome está diferente ou porque o arquivo está inválido. Primeiramente, verifique se o nome do arquivo xml é exatamente o mesmo que você informou no código, e inclua o diretório caso ele esteja dentro de uma pasta. Verifique se o nome do arquivo não está “haarcascade_frontalface_default” ao invés de “haarcascade-frontalface-default” por exemplo.
Disponha, Cassio!
Opa, disponha! 🙂
Olá Sidnei!
No curso é abordado como você pode treinar um modelo para reconhecer qualquer tipo de objeto. Teoricamente você poderia usar essa mesma técnica do YOLO para treinar o modelo para que ele reconheça letras e números, porém acaba não sendo muito prático ou eficiente. Hoje em dia existem técnicas próprias para reconhecimento de caracteres, dê uma procurada por OCR. Se tiver interesse veja aqui esse artigo por exemplo que explica como implementar uma técnica bem conhecida para isso.
Bom dia! Creio que sem softwares abertos ou outras abas já vai dar uma boa melhora, mas é bom testar com outros navegadores também pois esse erro da tela ficar preta com tão pouco tempo de treinamento não é comum mesmo, então as vezes pode ser até um bug.
Olá Cassio!
O uso da GPU na implementação do OpenCV só é explicada na aula “OpenCV e GPU”, antes dessa aula o curso aborda apenas como fazer mas usando CPU. Isso porque para fazer o uso da GPU com o OpenCV é necessário realizar algumas outras configurações a mais antes, e como elas dependem de qual o modelo que está sendo usado nós preferimos separar entre “com CPU” e “com GPU” para ficar melhor.
Qualquer dúvida veja também no Colab: https://colab.research.google.com/drive/1DFtI2m83c47vMmle0vCnLy7zWc5Uq2ee?usp=sharing
Olá! Conseguiu prosseguir com o treinamento dessa forma?
Realmente é estranho ocorrer esse travamento em uma fase tão inicial do treinamento, nos meus testes ocorria depois de umas 1000 iterações pelo menos, justamente por conta daquele motivo que falei.
A propósito, esses travamentos tem ocorrido sempre quando atinge esse número de iterações ou isso ta variando?
Realmente o Chrome abusa no uso da RAM hehe, a minha sugestão seria fazer o teste com outro navegador só para ver se o problema pode ser isso mesmo. Ah e também experimente fechar todas as outras abas e programas que tem aberto (tipo o Pycharm que vi que estava aberto ali no print, dependendo do que está aberto ele utiliza muito da sua memória).
Quanto à pergunta do Colab que você fez, utilizo ele normalmente assim pelo navegador. Uma opção é usar o Jupyter Notebook em sua máquina local porém só se você possuir uma GPU da Nvidia à disposição, se não o tempo de treinamento vai ser MUITO maior.
Qualquer dúvida é só avisar 🙂
Olá Lúcio!
Qual iteração que você parou? E quanto tempo demora até começar a travar?
Sobre esse problema da página inteira preta, infelizmente nunca vi e pelo que pesquisei não teria uma causa específica, se for erro no Colab ele sempre vai exibir alguma mensagem (ou ficar como “carregando…”) mas não é para ficar uma tela preta. Imagino que possa ser porque o Colab está usando muito da memória RAM e isso fez “travar” essa página do navegador (está usando o Chrome?)
Aliás, quando isso ocorre aparece mais alguma mensagem antes? Geralmente um aviso no meio da página
Comigo aconteceu parecido algumas vezes (tirando a parte da tela preta) quando minha memória RAM estava sendo muito utilizada, então experimentei fechar as outras coisas e as outras abas do navegador (tenho o costume de deixar várias abertas) e fazendo isso resolveu a princípio. Mas depois voltou (lá pela iteração 2500) pois tive que voltar a abrir outros programas, mas aí decidi interromper o treinamento e terminar uma outra hora.
No próximo teste só antes verifique o uso de sua memória ou CPU durante o treinamento, já que quanto mais tempo ficar rodando mais é para usar de memória. Por esse motivo eu recomendo também ficar limpando os outputs da célula de vez em quando, pois lembre que a cada segundo são adicionadas várias linhas de texto na página (referentes ao treinamento), então é esperado que depois de um tempo ela fique bem mais pesada por causa desse monte de conteúdo.
- This reply was modified 4 years, 5 months ago by
Gabriel Alves.
Olá Roberto!
Pode ser usada sim, normalmente. Está dando algum problema para você?
- This reply was modified 4 years, 8 months ago by
Gabriel Alves.
Olá Roberto!
Esse erro acontece quando o OpenCV não consegue ler o arquivo haarcascade (o .xml), geralmente porque o nome e o caminho do arquivo está errado ou porque o arquivo está inválido. Verifique se o arquivo está dentro do diretório adequado, conforme mostrado em aula, e também verifique se o nome do arquivo xml é exatamente o mesmo que você informou no código. Caso mesmo assim não funcione me avise, mas provavelmente é esse o motivo.
Olá Michael!
Acho que você pode conseguir isso que deseja através do fine-tuning. Se quiser se aprofundar mais no tema e ir além do que abordamos no curso então recomendo a leitura desse artigo: https://www.pyimagesearch.com/2019/06/03/fine-tuning-with-keras-and-deep-learning/
Ali explica exatamente como implementar usando o Tensorflow 2 / Keras.
Também recomendo dar uma olhada nesse paper que foi publicado há pouco tempo, onde o autor demonstrou como conseguiu um resultado superior ao primeiro lugar na competição usando a arquitetura VGG (fine-tuned VGG-face).
Se o seu objetivo é melhorar o modelo para utilizá-lo em uma aplicação então eu também sugiro adicionar mais imagens de treinamento, de preferência usando as outras bases comentadas em aula, além do fer2013.
- This reply was modified 4 years, 9 months ago by
Gabriel Alves.
2 de July de 2020 at 17:52 in reply to: Imports javacv 1.5 – FaceRecognizer, EigenFaceRecognizer, etc… #17172Que estranho, eu testei aqui no meu e não aparece esse erro com os imports. Consegue me mandar quais imports estão aparecendo o erro?
Confira aí se os imports estão assim:
Captura.java
import java.awt.event.KeyEvent; import java.util.Scanner; import org.bytedeco.opencv.opencv_core.Mat; import org.bytedeco.opencv.opencv_core.Rect; import org.bytedeco.opencv.opencv_core.RectVector; import org.bytedeco.opencv.opencv_core.Scalar; import org.bytedeco.opencv.opencv_core.Size; import static org.bytedeco.opencv.global.opencv_imgcodecs.imwrite; import static org.bytedeco.opencv.global.opencv_imgproc.COLOR_BGRA2GRAY; import static org.bytedeco.opencv.global.opencv_imgproc.cvtColor; import static org.bytedeco.opencv.global.opencv_imgproc.rectangle; import static org.bytedeco.opencv.global.opencv_imgproc.resize; import org.bytedeco.opencv.opencv_objdetect.CascadeClassifier; import org.bytedeco.javacv.CanvasFrame; import org.bytedeco.javacv.Frame; import org.bytedeco.javacv.FrameGrabber; import org.bytedeco.javacv.OpenCVFrameConverter; import org.bytedeco.javacv.OpenCVFrameGrabber;
Treinamento.java
import java.io.File; import java.io.FilenameFilter; import java.nio.IntBuffer; import static org.bytedeco.opencv.global.opencv_core.*; import org.bytedeco.opencv.opencv_core.*; import org.bytedeco.opencv.opencv_face.*; import static org.bytedeco.opencv.global.opencv_imgcodecs.*; import static org.bytedeco.opencv.global.opencv_imgproc.resize;
Reconhecimento.java
import org.bytedeco.javacpp.DoublePointer; import org.bytedeco.javacpp.IntPointer; import static org.bytedeco.opencv.global.opencv_imgproc.FONT_HERSHEY_PLAIN; import org.bytedeco.opencv.opencv_core.*; import org.bytedeco.opencv.opencv_face.*; import static org.bytedeco.opencv.global.opencv_imgproc.COLOR_BGRA2GRAY; import static org.bytedeco.opencv.global.opencv_imgproc.cvtColor; import static org.bytedeco.opencv.global.opencv_imgproc.putText; import static org.bytedeco.opencv.global.opencv_imgproc.rectangle; import static org.bytedeco.opencv.global.opencv_imgproc.resize; import org.bytedeco.opencv.opencv_objdetect.CascadeClassifier; import org.bytedeco.javacv.CanvasFrame; import org.bytedeco.javacv.Frame; import org.bytedeco.javacv.FrameGrabber; import org.bytedeco.javacv.OpenCVFrameConverter; import org.bytedeco.javacv.OpenCVFrameGrabber;
2 de July de 2020 at 11:59 in reply to: Imports javacv 1.5 – FaceRecognizer, EigenFaceRecognizer, etc… #17165Olá!
Dentro do arquivo de Download disponibilizado na aula “Recursos para download” tem um zip chamado “Mudanças-JavaCV-1.5.zip”. Nele vai ter o código atualizado para essa versão do JavaCV, contendo exatamente o código dos imports, assim você não vai precisar ficar conferindo 1 por 1 pra atualizar manualmente.
Foi esse que você tentou e não deu certo?
Qualquer dúvida é só avisar.
- This reply was modified 4 years, 3 months ago by
- AuthorPosts