Visão Computacional::Ferramentas – Python e OpenCV

Esta página é dedicada a tutorials e introduções às duas ferramentas que usaremos na parte básica da disciplina:

  1. A Linguagem de Programação Python 3
  2. A Biblioteca OpenCV

Vamos também abordar bibliotecas científicas adicionais de Python, como NumPy, SciKit, PyImage, Bokeh e outras, que terão papel auxiliar no código que você vai escrever.

Tutoriais

Bibliotecas numéricas, científicas e gráficas de Python

Discussão sobre as Ferramentas

  1. Magrathea Labs::Choosing one of many Python visualization tools

MatPlotLib/PyPlot

  1. Medium: Your Ultimate Guide to Matplotlib
  2. matplotlib.org::Pyplot tutorial
  3. datacamp::Matplotlib Tutorial: Python Plotting
  4. pythonprogramming.net::Matplotlib Crash Course Python Tutorial
  5. Towards Data Science::Data Visualization using Matplotlib

NumPy

NumPy é um pacote para a linguagem Python que suporta arrays e matrizes multidimensionais, possuindo uma larga coleção de funções matemáticas para trabalhar com estas estruturas (wikipedia).

  1. SciPy.org::Quickstart tutorial
  2. tutorialspoint::NumPy Tutorial
  3. dataquest.io::NumPy Tutorial: Data analysis with Python
  4. Machine Learning Plus::Numpy Tutorial
  5. Numerical Python Course::Numpy Tutorial
  6. Medium::Writing beautiful code with NumPy
  7. Towards Data Science::Numpy — Python made efficient

PIL: Python Imaging Library

  1. geeks3d::First Steps with PIL: Python Imaging Library
  2. zetcode::Pillow tutorial
  3. pillow::Tutorial Pillow (PIL fork)
  4. The Python Imaging Library Handbook

SciKit

  1. Medium::Scikit-Learn: A silver bullet for basic machine learning
  2. scikit-learn::Machine Learning in Python
  3. Medium::Building a k-Nearest-Neighbors (k-NN) Model with Scikit-learn

pandas – Python Data Analysis Library

  1. https://pandas.pydata.org/

Bokeh

Bokeh is an interactive visualization library that targets modern web browsers for presentation. Its goal is to provide elegant, concise construction of versatile graphics, and to extend this capability with high-performance interactivity over very large or streaming datasets. Bokeh can help anyone who would like to quickly and easily create interactive plots, dashboards, and data applications.

  1. https://bokeh.pydata.org/en/latest/
  2. Towards Data Science::Interactive Histograms with Bokeh

Outras Libs públicas em NumFocus

  1. https://numfocus.org/sponsored-projects

Tutoriais básicos de Python

  1. DataCamp & learnpython.org::Free Interactive Python Tutorial
  2. w3schools.com::Python Tutorial
  3. Code Academy::Learn Python
  4. Geeks for Geeks::Python Programming Language
  5. Tutorials Point::Python Tutorial
  6. Udemy::Complete Python Bootcamp: Go from zero to hero in Python 3

OpenCV

  1. Medium::AI — Python Computer Vision Tutorial with OpenCV
  2. pyimagesearch::OpenCV Tutorial: A Guide to Learn OpenCV
  3. pyimagesearch::OpenCV Tutorials, Resources, and Guides
  4. Medium::Exploring OpenCV’s Deep Learning Object Detection Library
  5. learnopencv::Install OpenCV 4 on Ubuntu 18.04

Coisas Extras em Python que podem ser Úteis

PyTest

  1. Medium::Intro to test framework Pytest

Jupyter Notebooks

  1. Towards Data Science::GraphFrames in Jupyter: a practical guide

Sobre o Autor

possui graduação em Ciências da Computação pela Universidade Federal de Santa Catarina (1989) e Doutorado Acadêmico (Dr. rer.nat.) em Ciências da Computação pela Universidade de Kaiserslautern (1996). Atualmente é professor Associado da Universidade Federal de Santa Catarina, onde é professor do Programa de Pós-graduação em Ciência da Computação e dos cursos de graduação em Ciências da Computação e Sistemas de Informação. É também professor e orientador de doutorado do Programa de Pós-Graduação em Ciências da Computação da Universidade Federal do Paraná - UFPR. Tem experiência nas áreas de Produção de Conteúdo para TV Digital Interativa, Informática em Saúde, Processamento e Análise de Imagens e Engenharia Biomédica, com ênfase em Telemedicina, Telerradiologia, Sistemas de Auxílio ao Diagnóstico por Imagem e Processamento de Imagens Médicas, com foco nos seguintes temas: analise inteligente de imagens, DICOM, CBIR, informática médica, visão computacional e PACS. Coordena o Instituto Nacional de Ciência e Tecnologia para Convergência Digital - INCoD. É também Coordenador Técnico do Sistema Integrado Catarinense de Telemedicina e Telessaúde (STT/SC), coordenador do Grupo de Trabalho Normalização em Telessaúde do Comitê Permanente de Telessaúde/Ministério da Saúde e membro fundador e ex-coordenador da Comissão Informática em Saúde da ABNT - ABNT/CEET 00:001.78. Atualmente também é membro da comissão ISO/TC 215 - Health Informatics. Foi coordenador da RFP6 - Conteúdo - do SBTVD - Sistema Brasileiro de TV Digital/Ministério das Comunicações. Foi o criador e primeiro Coordenador do Núcleo de Telessaúde de Santa Catarina no âmbito do Programa Telessaúde Brasil do Ministério da Saúde e da OPAS - Organização Pan-Americana de Saúde e criador do Núcleo Santa Catarina da RUTE - Rede Universitária de Telemedicina.