Softwares para Análise e Processamento de Imagens
Apresenta-se aqui uma lista de softwares desenvolvidos em Análise e Processamento de Imagens. Inclui softwares relacionados a projetos de pesquisa e trabalhos finais de IC/Mestrado/Doutorado. Na página Soft. Didáticos encontram-se exemplos de cunho didático aplicados ao processamento de imagens.
Sumário:
LIB_LDSC 1.0 - Biblioteca em C++ para Processamento Imagens
Nome da Biblioteca:
Biblioteca LIB_LDSC
Versão:
1.0.
Autor de Contato:
André Duarte Bueno <andreduartebueno@gmail.com>
Lista dos Autores;
André Duarte Bueno <andreduartebueno@gmail.com>
Leandro Puerari.
Áreas de pesquisa vinculadas:
Petrofísica de rochas reservatório
Engenharia de Reservatório
Modelagem Matemática Computacional
Vinculo com:
Disciplinas, Projetos de Pesquisa do LENEP, orientações de IC, TCC, Mestrado, Doutorado.
Paradigmas:
POO - Programação Orientada a Objeto e PF - Programação Funcional;
Tipo de Interface:
Terminal;
Terminal com geração de gráficos;
Uso em GUI - Interface Gráfica Simples e GUI - Interface Gráfica Completa quando associado com QT;
Plataformas Suportadas:
Windows; GNU/Linux; Mac OS X
Linguagens Utilizadas:
C++
Bibliotecas Utilizadas (dependências):
Sem dependências
Grau de Sofisticação dos Modelos Numéricos:
Iniciante e Intermediário
Grau de Sofisticação dos Modelos Computacionais:
Iniciante e Intermediário
Grau de Sofisticação da Documentação para o Desenvolvedor (código):
README: Descreve o que é a libldsc e os arquivos de ajuda.
INSTALL: Descreve como instalar a libldsc.
HOWTO: Descreve como utilizar a libldsc.
NEWS: Descreve as novidades das últimas versões.
ORGANIZATION: Descreve como modificar a libldsc (informações para desenvolvedores - programadores).
TODO: Lista das tarefas a serem realizadas.
BUGS: Lista de bugs relatados ou identificados.
ChangeLog: Lista de modificações da biblioteca.
COPYING: Descreve as condições para cópia e instalação da libldsc e a licença pública da GNU (Versão 2).
AUTHORS: Lista dos autores da libldsc.
Códigos parcialmente documentados
Grau de Sofisticação da Documentação para o Usuário (manual do software):
Tem manual do usuário simples e exemplos de uso no diretório testes
Grau de Sofisticação dos Testes:
Alguns testes de unidade em testes
O Software foi registrado:
Não
Tipo de Licença:
GNU General Public License (GPL)
Links:
Github do LDSC: https://github.com/ldsc
Github da Biblioteca Lib_LDSC
Software derivado: Software LVP
Software derivado: Sail
Software derivado: Imago
Software derivado: Anaimp
Comentário e/ou informação extra:
Foi iniciado projeto (vide projetos) que visa criar a LIB_LDSC-2.0 com uso de C++20, processamento paralelo e técnicas de clean code.
ANAIMP - Análise de Imagens Meios Porosos
Nome do Software:
Anaimp - Análise de Imagens Meios Porosos
Versão:
0.5
Autor de Contato:
André Duarte Bueno <andreduartebueno@gmail.com>
Áreas de pesquisa vinculadas:
Petrofísica de rochas reservatório
Modelagem Matemática Computacional
Vinculo com:
Projetos de Pesquisa do LMPT e doutorado do Prof. André Duarte Bueno.
Paradigmas:
POO - Programação Orientada a Objeto;
Tipo de Interface:
Uso GUI - Interface Gráfica Completa associada a biblioteca OWL da Borland;
Plataformas Suportadas:
Windows
Linguagens Utilizadas:
C++
Bibliotecas Utilizadas (dependências):
Grau de Sofisticação dos Modelos Numéricos:
Iniciante e Intermediário
Grau de Sofisticação dos Modelos Computacionais:
Iniciante e Intermediário
Grau de Sofisticação da Documentação para o Desenvolvedor (código):
INSTALL: Descreve como instalar.
O Anaimp tinha um instalador.
Grau de Sofisticação da Documentação para o Usuário (manual do software):
Tem manual do usuário simples.
Grau de Sofisticação dos Testes:
Sem mecanismos de testes.
O Software foi registrado:
Não
Tipo de Licença:
GNU General Public License (GPL)
Comentário e/ou informação extra:
O Anaimp foi descontinuado pelos seguintes motivos:
A Borland encerrou a manutenção do Borland 5.02 e da biblioteca gráfica OWL inviabilizando a continuidade do projeto.
Aprendizado: Nunca use bibliotecas proprietárias!
O LMPT optou por desenvolver o Imago a partir de biblioteca da PUC, depois mudamos para COILIB e depois para QT!
Códigos do anaimp foram migrados para dentro da Biblioteca Lib_LDSC.
Aulas que podem ser uteis:
Material da apostila da disciplina de análise de imagens, ver apostilas.
Tarefas:
Verificar a possibilidade de recompilar com biblioteca mais recente e gerar uma versão demo.
Abaixo imagens do Anaimp.
IMAGO (ESSS)
Nome do Software (ou Biblioteca):
Imago
Versão:
1.0
Autor de Contato:
Lista dos Autores;
Paulo Cezar Philippi
Marcos Damiani
Celso Peres Fernandes
André Duarte Bueno <andreduartebueno@gmail.com>
Luiz Orlando Emerick
Fábio Magnani
Áreas de pesquisa vinculadas:
Processamento de Imagens de Rochas Reservatório
Modelagem Matemática Computacional
Vinculo com:
Projetos de Pesquisa do LMPT e doutorado.
Paradigmas:
POO - Programação Orientada a Objeto
Tipo de Interface:
GUI - Interface Gráfica Completa (menu/barra tarefas, barra estatus, diálogos e janelas);
Plataformas Suportadas:
Windows e GNU/Linux
Linguagens Utilizadas:
C++
Bibliotecas Utilizadas (dependências):
Versões preliminares usavam COILIB
Posteriormente migrado para QT
Grau de Sofisticação dos Modelos Numéricos:
Avançado_1
Grau de Sofisticação dos Modelos Computacionais:
Avançado_1
Grau de Sofisticação da Documentação para o Desenvolvedor (código):
Leiame; Install; ToDo/Tarefas; Bugs; Diagramas UML
Códigos bem documentados
Grau de Sofisticação da Documentação para o Usuário (manual do software):
Tem manual do usuário completo
Grau de Sofisticação dos Testes:
Vários testes de unidade
O Software foi registrado:
Sim
Tipo de Licença:
Proprietária
Links:
Comentário e/ou informação extra:
No meu doutorado, desenvolvido no LMPT, comecei o desenvolvimento do Software de Análise de Imagens de Meios Porosos - ANAIMP (veja imagens nesta página). O ANAIMP foi descontinuado porque a Borland encerrou a manutenção do ambiente de desenvolvimento Borland 5.02 e da biblioteca gráfica OWL inviabilizando a continuidade do projeto. Adicionalmente o LMPT optou por desenvolver o Imago em parceria com a ESSS. Uma versão preliminar foi desenvolvida usando uma biblioteca da PUC, ainda bem rudimentar, depois mudamos para uso da biblioteca COILIB e depois para biblioteca QT.
Trabalhávamos em parceria direta com a ESSS e Petrobras. As bibliotecas de base, relacionadas a interface gráfica e visualização 3D eram desenvolvidas pela equipe da ESSS. A inclusão dos códigos acadêmicos, desenvolvidos por mestrandos e doutorandos do LMPT eram anexadas ao Imago diretamente pelos alunos ou em parceria com o Marcos Damiani, funcionário da ESSS que trabalhava dentro do LMPT.
Alguns códigos do anaimp foram migrados para dentro da Biblioteca Lib_LDSC e passaram a fazer parte do Imago. Notadamente os desenvolvidos pelo Prof. André Bueno, como reconstrução 3D por gaussiana truncada(Bueno/Liang), configurações de equilíbrio (Bueno/Magnani), grafo de conexão serial e permeabilidade relativa. Além de códigos para filtragem de imagens, cálculo da autocorrelação, conectividade e distribuição de tamanho de poros (morfologia matemática) entre outros.
O Imago era usado pela equipe do CENPES/PETROBRAS e tínhamos um feedback para ajustes e correções.
O primeiro manual da versão 1.0 foi desenvolvida por mim.
Nas imagens a seguir versões do Imago rodando no Windows e GNU/Linux, incluindo algumas versões do Imago com códigos que não foram incluídos na versão 1.0.
SAIL - Software Análise de Imagens Livre
Nome do Software (ou Biblioteca):
Sail - Software Análise de Imagens Livre
Versão:
1.0.
Autor de Contato:
Tiago Schaewer
Lista dos Autores;
Tiago Schaewer
André Duarte Bueno <andreduartebueno@gmail.com>.
Áreas de pesquisa vinculadas:
Engenharia de Reservatório
Dano de Formação
Processamento de Imagens de Rochas Reservatório
Modelagem Matemática Computacional
Vinculo com:
Projeto de Pesquisa do LENEP na área de dano a formação (Prof. Pavel)
Paradigmas:
POO - Programação Orientada a Objeto
Tipo de Interface:
GUI - Interface Gráfica Completa (menu/barra tarefas, barra estatus, diálogos e janelas);
Com capacidade de visualização de imagens 3D com a biblioteca OGRE-3D
Plataformas Suportadas:
Windows e GNU/Linux
Linguagens Utilizadas:
C++
Bibliotecas Utilizadas (dependências):
QT 3.0
ltilib
dislin
ogree
zziplib
LUA
DevIL
biblioteca da nvidia
Grau de Sofisticação dos Modelos Numéricos:
Avançado_1
Grau de Sofisticação dos Modelos Computacionais:
Avançado_1
Grau de Sofisticação da Documentação para o Desenvolvedor (código):
Leiame; Install; ToDo/Tarefas; Bugs; Diagramas UML
Códigos parcialmente documentados
Grau de Sofisticação da Documentação para o Usuário (manual do software):
Tem manual do usuário simples
Grau de Sofisticação dos Testes:
Alguns poucos testes de unidade;
O Software foi registrado:
Não
Tipo de Licença:
GNU General Public License (GPL)
Links:
Github do LDSC: https://github.com/ldsc
Gerou atualizações na Biblioteca LDSC
Link para arquivo com códigos do SAIL (para acesso entre em contato)
Comentário e/ou informação extra:
O software foi desenvolvido pelo aluno de mestrado Tiago Schaewer, com acompanhamento e supervisão.
O SAIL acessa a biblioteca LIB_LDSC para diversos cálculos realizados com o processamento de imagens.
Inclui ainda toda uma interface gráfica muito bem elaborada e que conta com mecanismos avançados para a época como:
Uso de praticamente todos os recursos de QT-3, com diálogos, janelas, menus, barra de tarefas e status.
Uso da biblioteca OGRE3D para gerar visualizações 3D;
Uso de bibliotecas auxiliares para carregar imagens e salvar as mesmas de forma compactada (zziplib).
Uso de diversas bibliotecas (ltilib; dislin; LUA; DevIL).
Inclui interface com duas línguas - português e inglês.
Além de codificar toda a interface do SAIL, Tiago incluiu toda uma parte inovadora relativa ao seu mestrado, permitindo a incrustação de imagens 3D usando três modelos de incrustação e o cálculo da permeabilidade e do dano a formação (queda da permeabilidade) para diferentes percentuais de incrustação.
Segmentação de Imagens com Redes Neurais - IA
Nome do Software (ou Biblioteca):
Biblioteca
Versão:
0.5.
Autor de Contato:
Eneida Arendt
Lista dos Autores;
Eneida Arendt
André Duarte Bueno <andreduartebueno@gmail.com>.
Áreas de pesquisa vinculadas:
Processamento de Imagens de Rochas Reservatório
Modelagem Matemática Computacional
Inteligência Artificial, Redes Neurais.
Vinculo com:
LVP
Paradigmas:
POO - Programação Orientada a Objeto
Tipo de Interface:
Modo texto
Plataformas Suportadas:
Windows e GNU/Linux
Linguagens Utilizadas:
Bibliotecas Utilizadas (dependências):
ImageJ.
Grau de Sofisticação dos Modelos Numéricos:
Intermediário_1
Grau de Sofisticação dos Modelos Computacionais:
Intermediário_1
Grau de Sofisticação da Documentação para o Desenvolvedor (código):
Códigos parcialmente documentados
Grau de Sofisticação da Documentação para o Usuário (manual do software):
.
Grau de Sofisticação dos Testes:
Alguns poucos testes de unidade;
O Software foi registrado:
Não
Tipo de Licença:
GNU General Public License (GPL)
Links:
Github do LDSC: https://github.com/ldsc
Comentário e/ou informação extra:
O software foi desenvolvido pela aluna de mestrado Eneida Arendt, com acompanhamento e supervisão.
Algumas partes em C++ para pré-processamento e a parte de redes e IA dentro do ImageJ
LVP - Laboratório Virtual de Petrofísica
Nome do Software (ou Biblioteca):
LVP - Laboratório Virtual de Petrofísica
Versão:
1.0 Mestrado do Leandro
2.0 Doutorado do Leandro
Autor de Contato:
Leandro Puerari
Lista dos Autores;
Leandro Puerari
André Duarte Bueno <andreduartebueno@gmail.com>.
Áreas de pesquisa vinculadas:
Processamento de Imagens de Rochas Reservatório
Modelagem Matemática Computacional
Solução do problema de antecipação da injeção de mercúrio e temas relacionados ao mestrado do Leandro (veja página alunos mestrado) para acesso a dissertação do Leandro.
Vinculo com:
Mestrado do Leandro, amplicação da LIB_LDSC e criação do LVP com QT4.
Doutorado do Leandro, amplicação da LIB_LDSC e reformulação do LVP com QT5.
Paradigmas:
POO - Programação Orientada a Objeto
Tipo de Interface:
GUI - Interface Gráfica Completa (menu/barra tarefas, barra estatus, diálogos e janelas);
Plataformas Suportadas:
Windows, GNU/Linux, Mac OS X
Linguagens Utilizadas:
C++
Bibliotecas Utilizadas (dependências):
LIB_LDSC 1.0 (veja nesta página dados da LIB_LDSC).
QT4 (LVP 1.0) - Mestrado
QT5 (LVP 2.0) - Doutorado
QWT
Grau de Sofisticação dos Modelos Numéricos:
Avançado_1
Grau de Sofisticação dos Modelos Computacionais:
Avançado_1
Grau de Sofisticação da Documentação para o Desenvolvedor (código):
Leiame; Install; ToDo/Tarefas; Bugs; Diagramas UML
Códigos parcialmente documentados
Grau de Sofisticação da Documentação para o Usuário (manual do software):
Tem manual do usuário simples (veja dissertação mestrado do Leandro)
Grau de Sofisticação dos Testes:
Alguns poucos testes de unidade
O Software foi registrado:
Não
Tipo de Licença:
GNU General Public License (GPL)
Links:
Github do LDSC: https://github.com/ldsc
Software: Software LVP
Comentário e/ou informação extra:
O LVP - Laboratório Virtual de Petrofísica foi inteiramente desenvolvido pelo Leandro Puerari com supervisão e acompanhamento.
Leandro adicionou modelos computacionais para solucionar o problema do avanço da intrusão de mercúrio em simulações com uso do método das configurações de equilíbrio e diversas outras soluções de algoritmos e software.
LVP 1.0
"Os modelos e algoritmos desenvolvidos e diversas funcionalidades da biblioteca lib_ldsc foram utilizadas no desenvolvimento do software LVP; um software desenvolvido com o objetivo de disponibilizar algumas funcionalidades que se almeja em um Laboratório Virtual de Petrofísica. Dentre as funcionalidades disponibilizadas estão a aplicação de filtros, a reconstrução tridimensional, a manipulação de imagens 2D e 3D, o cálculo da porosidade, da função correlação, da permeabilidade e a determinação da permeabilidade relativa."
Vide dissertação do Leandro para maiores detalhes dos modelos desenvolvidos, incluindo fluxogramas e diagramas UML.
No mestrado Leandro finalizou a versão 1.0 do LVP usando QT4.
LVP2.0
"Neste trabalho foram desenvolvidos modelos e algoritmos inovadores, que realizam uma série de operações em imagens tridimensionais de meios porosos (microtomografias de rochas reservatório de petróleo), que resultam na determinação da permeabilidade intrínseca. É realizada a segmentação do meio poroso em duas regiões: uma representando os poros e outra representando as gargantas de poros. As imagens segmentadas são mensuradas para obter as distribuições de tamanho de poros e gargantas de poros. As distribuições são utilizadas para gerar redes de percolação tridimensionais, não regulares, formadas por sítios e ligações que são utilizadas para determinar a permeabilidade intrínseca do meio poroso em estudo.
Como resultado prático/aplicado, foi desenvolvido o software LVP; um Laboratório Virtual de Petrofísica que inclui as inovações criadas neste trabalho e diversas outras funcionalidades já implementadas na biblioteca de análise de imagens de meios porosos, lib_ldsc. O LVP pode ser visto como uma forma econômica na realização de medições, experimentos e simulações que visam determinar propriedades de meios porosos. Uma vez obtidas as imagens a serem analisadas e processadas, inúmeros experimentos podem ser realizados com estas imagens sem prejudicar a qualidade da amostra, pois os métodos utilizados são não destrutivos.
O LVP é software livre, com interface gráfica amigável, desenvolvido utilizando o modelo incremental de desenvolvimento de software, modelagem e programação orientadas a objetos (UML/C++) e modernas ferramentas computacionais (Git, Qt, Qwt, OpenGL, OpenMP)."
Vide doutorado do Leandro para maiores detalhes dos modelos desenvolvidos, incluindo fluxogramas e diagramas UML.
No doutorado Leandro finalizou a versão 2.0 do LVP usando QT5.
Nas imagens a seguir imagens do LVP-1.0 e LVP-2.0
IA-Segmentação - Software Segmentação de Imagens Usando Inteligência Artificial - C++, Qt e Pytorch
Nome do Software (ou Biblioteca):
IA-Segmentação - Software Segmentação de Imagens Usando IA
Versão:
1.0.
Autor de Contato:
João Marcelo
Lista dos Autores;
João Marcelo
André Duarte Bueno <andreduartebueno@gmail.com>.
Áreas de pesquisa vinculadas:
Caracterização Petrofísica
Engenharia de Reservatório
Processamento de Imagens de Rochas Reservatório
Modelagem Matemática Computacional
Inteligência Artificial, Redes Neurais.
Vinculo com:
Linha de pesquisa em análise de imagens
Paradigmas:
POO - Programação Orientada a Objeto
Tipo de Interface:
GUI - Interface Gráfica Completa (menu/barra tarefas, barra estatus, diálogos e janelas);
Modo texto
Plataformas Suportadas:
Windows e GNU/Linux
Linguagens Utilizadas:
C++, Python
Bibliotecas Utilizadas (dependências):
QT 6.0
Pytorch
Grau de Sofisticação dos Modelos Numéricos:
Intermediário
Grau de Sofisticação dos Modelos Computacionais:
Intermediário
Grau de Sofisticação da Documentação para o Desenvolvedor (código):
Códigos parcialmente documentados
Grau de Sofisticação da Documentação para o Usuário (manual do software):
.
Grau de Sofisticação dos Testes:
.
O Software foi registrado:
Não
Tipo de Licença:
GNU General Public License (GPL)
Links:
Github do LDSC: https://github.com/ldsc
https://github.com/ldsc/Software-CaracterizacaoDeRochaDigitalUsando-IA-InteligenciaArtificial-SegmentacaoImagens
Para acesso entre em contato.
Comentário e/ou informação extra:
O software foi desenvolvido pelo aluno de mestrado João Marcelo, com acompanhamento e supervisão.
Referencias Externas - Bibliografias
Algumas referencias para disciplinas de Programação, Projeto Engenharia, Trabalho de Conclusão de Curso, Metodologia Científica e Processamento de Imagens.
Engenharia de software, especificação, elaboração, análise, projeto, teste, debugagem.
Sommerville, Ian. Engenharia de Software. Addison-Wesley. 8nd. 2007.
Denis Alcides Rezende. Engenharia de Software e Sistemas de Informação. 2ed. Brasport. 2002.
Roger S. Pressman. Engenharia de Software. 5ed. McGrawHill, 6nd. 2006.
Blaha, Michael; Rumbaugu, James. Modelagem e projetos baseados em objetos com UML2. 2.ed. Rio de Janeiro: Elsevier, 2006. 496p. ISBN 85-352-1753-3.
Eric Frieman. Use a cabeça! padrões de projeto. 2ed. 2007.
Robert C. Myers . Essential Test-Driven Development 1st Edition.Addison-Wesley Professional; 1 edition. 2018.
Jorge Audy. Desenvolvimento distribuido de software. Campus. 2008.
Ann R. Ford. Practical debugging in C++. Prentice hall. 2002.
André Koscianski. Qualidade de software. Novatec. 2006.
Leonardo Molinari. Teste de software. Erica. 2003.
Michal Young. Teste e analise de software. Bookman. 2008.
Trayahur. M. F. e Emerson Rios. Projeto e Engenharia de Software: Teste de Software. Alta Books. 2003.
UML
Martim Fowler. UML Essencial – Um breve guia para a linguagem-padrão de modelagem de objetos. Bookman, Porto Alegre, 2000.
Martim Fowler. UML Destiled – a brief guide to the standart object modeling language. 3N,.2003.
Gilleanes T.A.Guedes. UML 2 uma abordagem prática. Novatec. 2008.
Bret Mclaughin. Use a cabeça! análise e projeto orientado a objeto. Altabook/oreilly.
Alistair Cockburn. Escrevendo casos de uso eficazes. Bookman.
Booch, G., Rumbaugh, J., and Jacobson, I. UML - Guia do Usuário. Edit. Campus, Rio de Janeiro, 2000.
C++
Stroustroup. Programming principles and pratice using C++. 2nd. 2014.
Deitel, H. and Deitel, P. C++ How to Program. Pearson; 10 edition; 2016
Bjarne, Stroustrup. C++ The Programming Language. Addison-Wesley, 4 edition. 2013.
Siddhartha Rao. C++ in One Hour a Day, Sams Teach Yourself. Sams Publishing; 8 edition; 2017.
Marius Bancila. Modern C++ Programming Cookbook. Packt Publishing. 2017
Josuttis, N. M. Object Oriented Programming in C++. John Wiley & Sons. 2002.
Tony Gaddis; Starting Out with C++: From Control Structures through Objects; Addison Wesley; 2008.
Malik . C++ Programming: From Problem Analysis to Program Design; Fourth Edition (Paperback D.S. (Course Technology); 2008.
Malik . C++ Programming: Program Design Including Data Structures; 5 Edition (Paperback D.S. (Course Technology); 2010.
Tony Gaddis. Starting Out with C++: Early Objects. Addison Wesley; 2010.
Davis. Beginning Programming With C++ for Dummies. John Wiley & Sons. 2010.
C++ Avançado
Scott Meyers. Effective Modern C++ : 42 Specific Ways to Improve Your Use of C++11(1rd Edition). Oreilly (2014).
Marc Gregoire. Professional C++. 4nd. wrox. 2018.
Nicholas A. Solter. Professional C++. 3nd. Wrox. 2014.
Boris Schalingl. The Boost C++ Libraries; 2nd; 2014
Herb Sutter. C++ Coding Standards.Pearson. 2005.
Scott Meyers. More Effective C++. Adison-Wesley. 1996 (2006).
Scott Meyers. Effective C++ : 55 Specific Ways to Improve Your Programs and Designs (3rd Edition). Addison-Wesley (2005).
STL e Templates
Jacek Galowicz. C++17 STL Cookbook. Packt Publishing. 2017.
David R. Musser. STL Tutorial and Reference Guide: C++ Programming with the Standard Template Library. Addison-Wesley, 2010.
Nicolai M. Josuttis. The C++ Standard Library: A Tutorial and Reference. Addison-Wesley Pub Co; 1st edition. 1999.
Pete Becker. C++ Standart Library Extensions. Addison-Wesley. 2007.
Bjorn Larlsson. Beyond the C++ standart library. Addison-Wesley. 2006.
David Vandevoorde. C++ templates meta programming. Addison-Wesley. 2005
Andrei Alexandrescu. Modern C++ Design. Addison-Wesley. 2001.
Angelika Langer. Standart C++ iostreams and locales. Adison-Wesley. 2000.
Multiplataforma (GNU/Linux)
Cederqvist, P. Version Management with CVS. Free Software Foundation. 1993.
Bibliotecas e interfaces gráficas
Mark Summerfield. Advanced Qt Programming: Creating Great Software with C++ and Qt 4. Addison-Wesley Professional, 2010.
Manual do pacote libtool. Acesso via internet.
Jasmim Blanchete. C++ GUI Programming With Qt 4. Prentice Hall. 2006.
Alan Ezust. An introduction to design patterns in C++ with Qt 4. Prentice Hall. 2006.
Jasmin Blanchette and Mark Summerfield. “C++ GUI Programming With QT 3”. Prentice Hall. 2004.
Marcelo Cohen. Open GL uma abordagem prática. Novatec. 2006.
Otimização e processamento paralelo e distribuído
Anthony Williams. C++ Concurrency in Action: Practical Multithreading (Paperback) . Manning Publications; 2nd. 2017.
Maya Posch ; Mastering C++ Multithreading; Packt Publishing; 2017.
Viktor Sehr; C++17 High Performance; Packt Publishing; 2018.
Cameron Hughes e Tracey Hughes. “Professional Multicore Programming”. Wrox, 2008.
Cameron Hughes e Tracey Hughes. “Parallel and Distributed Programming Using C++”. Addison-Wesley, 2004.
H.S. Stone, "High performance computer architecture", Addison-Wesley.
Foster, "Designing and building parallel programs", Massashusetts: Addison Wesley, 3.ª edição, 1993.
(http://www-unix.mcs.anl.gov/dbpp/).
Peter Pacheco, “Parallel Programming With MPI”. Morgan Kaufmann Publishers. 1996.
David R. Butenhof. Programming with POSIX(R) Threads. Addison-Wesley, 1987.
George Em Karniadakis , Robert M. Kirby II . Parallel Scientific Computing in C++ and MPI: A Seamless Approach to Parallel Algorithms and their Implementation. Cambridge University Press. 2003.
Yair Shapira. Solving PDEs in C++. SIAM, Society for Industrial and Applied Mathematics. 2006.
B. H. Flowers. An Introduction to Numerical Methods in C++. Oxford University Press, USA; Rev Sub edition. 2000.
Jack Dongarra et al. Numerical Linear Algebra for High-Performance Computers. SIAM. 1998.
Paide Keyes et al. Domain Based Parallelism and Problem Decomposition Methods in Computacional Sciente and Enginnering. SIAM. 2009.
Marcos Pitanga. Computação em Clusters. Brasport. 2003.
Michel A. Henoux et. al. Parallel Processing for Scientific Computing. SIAM. 2006.
Daniel J. Duffy. Monte Carlo Frameworks: Building Customisable High-performance C++ Application. Wiley. 2009.
Processamento Imagens
GONZALEZ, RAFAEL C. Processamento De Imagens Digitais. EDGARD BLUCHER. 2000. 1ed.
Meiqing Wang. A concise introduction do image processing using C++. CRC Press. 2009.
PEDRINI, HELIO. Análise De Imagens Digitais Principios, Algoritmos e Aplicações. Thomson pioneira. 2007. 1ed.
C. Pozrikidis. Introduction to C++ Programming and Graphics (Hardcover) ; Springer; 1 edition ; 2007.
Wilhelm Burger. Principles of Digital Image Processing: Core Algorithms. Springer. 2009.
Lawrence O'Gorman. Practical Algorithms for Image Analysis with CD-ROM. Cambridge University Press. 2008.
Aplicações científicas e engenharia
James Paul Holloway. Introdução a Programação para Engenharia. LTC, 2006.
John J. Barton, Lee R. Nackman. Scientific and Engineering C++: An Introduction With Advanced Techniques and Examples. Addison-Wesley Pub Co; 1st edition. 1994.
Daoqi Yang . C++ and Object-oriented Numeric Computing for Scientists and Engineers Springer Verlag; 1st edition. 2000.
Yair Shapira. Solving PDEs in C++: Numerical Methods in a Unified ObjectOriented Approach. SIAM. 2006.
Gilbert Strang; Computational Science and Engineering; SIAM; 2007.
Jorge J. Moré and Stephen J. Wright Optimization Software Guide; SIAM; 1993.
Yorick Hardy. Computer Algebra With Symbolic C++ (Paperback (Editor) World Scientific Publishing Company; 2008.
Marcia Ruggiero. Calculo numerico. Pearson, 1996, 2.ed. 8534602042
Chen, Zhangxin; Huan, Guaren. Computational Methods for Multiphase Flow in Porous Media. Edt: SIAM.
Walter Savitch. Problem solving with C++. pearson. 2007.
Zhangxin Chen. Computational Methods for Multiphase Flows in Porous Media . 2006.
D.M.Capper. C++ for scientists, enginners and mathematicians. Springer. 2001.
Daniel J. Duffy, Joerg Kienitz. Monte Carlo Frameworks: Building Customisable High-performance C++ Applications. Wiley; Har/Cdr edition; 2009.
Allen B. Downey. How To Think Like A Computer Scientist: C++ Version. CreateSpace; 2009.
Mark Lee. C++ Programming for the Absolute Beginner. Course Technology PTR; 2 edition; 2009.
Robert Sedgewick. Algorithms in C++. Addison-Wesley Professional; 1 edition; 2009.
Gary J. Bronson. C++ for Engineers and Scientists. Course Technology; 3 edition; 2009.
Damon Danieli. C++ Algorithms for Digital Signal Processing, 2/e, Format: Kindle Edition ; Publisher: Prentice Hall Professional; 2 edition; 2008.
Edward Scheirnerman. C++ for mathematicians. CRC. 2006.
Armando de Oliveira Fortuna. Técnicas Computacionais para Dinâmica dos Fluidos: Conceitos Básicos e Aplicações. Editora da Universidade de São Paulo – EDUSP.São Paulo SP. Primeira, 85-314-0526-2. 2000.
Randall L. Eubank. Statistical Computing in C++ and R. Chapman & Hall/CRC; 2010.
Fedora 10 and Red Hat Enterprise Linux Bible (Bible (Wiley)) - Paperback : 1128 pages; Wiley; 2009
O livro texto a ser utilizado na disciplina:
Bueno. A.D. Programação Orientada a Objeto em C++ - Aprenda a programar em ambiente multiplataforma com software livre. Terceira Edição. Editora Novatec. São Paulo (2020). (previsão).
Metodologia Científica:
José Carlos Koche. Fundamentos de Metodologia Científica; teoria da ciência e iniciação à pesquisa. 24 Edição. Vozes. Petrópolis/RJ. 2007.
Aidil Jesus da Silveira Barros e Neide Aparecida de Souza Lehfeld. Fundamentos de Metodologia Científica. 3 Edição. Prentice Hall. São Paulo. 2007.
Milton Vargas. Técnica, Tecnologia e Ciência; revista de educação & tecnologia.
Milton Vargas. Metodologia da Pesquisa Tecnológica. Globo. Rio de Janeiro. 1985.
Karl Pooper. A Lógica da Pesquisa Científica. Cultrix. Sp. 1972.
Fábio Appolinário. Dicionário de Metodologia Científica. Atlas. SP. 2007.
M. Weatherall. Método Científico. Editora Poligono, USP. 1970.
Cláudio de Moura de Castro. A Prática da Pesquisa. 1ed. McGraw-Hill. SP. 1977.
Redação:
Editora Abril. Manual de Estilo. 11 ed. Nova Fronteira.
Instituto Paranaense de Desenvolvimento Econômico e Social. Redação e Editoração. Ed. da UFPR. Curitiba. 2000.
Robert Barras. Os Cientistas Precisam Escrever: Guia de Redação para Cientistas, Engenheiros e Estudantes. Ed.USP. SP. 1979.
Umberto Eco. Como se Faz Uma Tese. Perspectiva. 15 ed. 2000.
Apresentações:
Reinaldo Polito. Superdicas para Falar em Público. Saraiva, São Paulo, 2005.
Vanessa Freitas. Como Falar em Público. Editora Universo dos Livros. São Paulo. 2005.
Dale Carnegie. Como falar em público e Influenciar Pessoas no Mundo dos Negócios. Ed.46. Record. 2010.
Disciplina, aprendizado, engenharia:
Içami Tiba. Disciplina na Medida Certa. Integralle. SP. 2006.
John D. Bransford et all. Como as Pessoas Aprendem: Cérebro, Mente, Experiência e Escola. Ed. SENAC. SP 2007.
Holtzapple e Reece; Introdução a Engenharia; LTC; Rio de Janeiro; 2006.
Valter Antonio Bazzo. Introdução À Engenharia - Conceitos, Ferramentas e Comportamentos - Série Didática. Editora UFSC. Florianópolis. 2009.
TeX/LaTeX/LyX:
David F. Griffiths. Learning LaTeX. SIAM. 1997.
Michel Groossens and Frank Mittelbach and Samarin.The LaTeX Companion. Addison-Wesley.1994.
LyX Team. (2012). The LyX User's Guide. LyX Team - http://www.lyx.org.
Lamport, L. (1985). Latex - A Document Preparation System. Addison-Wesley.
Steding-Jessen, K. (2000). Latex Demo: Exemplo com Latex 2e.
Knuth, D. E. (1986). The Texbook. Addison-Wesley.
Helmut Kopka and Patrick W Daly. A Guide To LaTeX2e. Addison-Wesley. 1995.
O texto a ser utilizado na disciplina:
Bueno. A.D. Manual do Aluno de IC/MSc/DSC - UENF/CCT/LENEP. Macaé, 2019.