SlideShare uma empresa Scribd logo
1 de 6
Baixar para ler offline
1
Aplicando camadas de processamento durante o Aumento Sintético
de uma base de dados
No que diz respeito ao processo de aumento sintético de uma base de dados,
convencionalmente realizado pelas ferramentas proprietárias das bibliotecas
em questão (TensorFlow / Keras), é notável o limitado número de funções
aplicáveis para o real tratamento dos dados. Contextualizando para a
ferramenta ImageDataGenerator( ), o processamento convencionalmente
executado sobre as amostras sintéticas geradas se resume a aplicar zoom,
brilho / contraste, seguido de operações morfológicas como espelhar,
rotacional, inclinar, esticar, entre outras, deixando muito a desejar nos pontos
que de fato seriam um “tratamento” das características que compõem as
imagens aqui processadas.
Diante deste problema, a ferramenta ImageDataGenerator( ) ao longo do
tempo sofreu uma série de atualizações, tendo em uma delas a inclusão de
um método dedicado a incorporação de funções de terceiros em meio ao
processo de geração de imagens.
Em outras palavras, sem perder nenhuma de suas características de
tratamento / processamento originais, foi permitido o uso de uma função
acessória personalizada para assim estender os meios e métodos os quais o
processamento das amostras / imagens de fato demanda.
Nesse cenário, a partir de um parâmetro nomeado preprocessing_function é
possível atribuir a instância de uma função personalizada, a qual iremos
utilizar como meio para aplicação de todos os métodos de tratamento de
imagem os quais necessitamos.
Internamente o conteúdo da(s) função(ões) que estaremos programando será
executado em uma etapa de processamento anterior às ferramentas nativas
da classe ImageDataGenerator( ), na camada de desenvolvimento em que
estaremos trabalhando, precisamos apenas nos atentar a escrever uma
função que execute o tratamento adequado às amostras a serem processadas,
2
retornando seus dados à própria instância da classe / ferramenta
ImageDataGenerator.
Para que tais conceitos fiquem mais claros, nada melhor que a prática. Em
nosso código, supondo uma etapa de pré-processamento a ser aplicada a uma
base de dados de um determinado projeto, importamos a biblioteca OpenCV
através do comando import cv2, também importamos a ferramenta
ImageDataGenerator que será nossa plataforma para aumento sintético das
imagens.
Na sequência, criamos uma função personalizada chamada filtros( ) que
quando instanciada e inicializada obrigatoriamente deverá receber um dado /
valor para seu parâmetro nomeado img.
Dentro do corpo desta função, sob sua indentação declaramos uma variável
local de nome img que inicializa a ferramenta cv2.bilateralFilter( ), um filtro
bilateral para redução de ruído muito eficiente em grande parte das
aplicações, por sua vez parametrizada com a imagem a ser processada,
seguido dos parâmetros nomeados d, sigmaColor e sigmaSpace, que
basicamente configuram o diâmetro do bloco / da área a ser processada em
tamanho de pixels (9 representa aqui uma matriz 3X3 pixels), também
configurando o fator de influência da cor e da diferença espacial dos pixels do
bloco, respectivamente, para assim retornar uma redução local de ruído
visível nas próprias características da imagem em questão.
Dando sequência, já a nível dos parâmetros nomeados da ferramenta
ImageDataGenerator( ) atribuímos uma instância do objeto filtros (nossa
função personalizada) para o parâmetro nomeado preprocessing_function.
3
Desta forma, cada imagem processada para geração de novas amostras será
primeiramente processada por nosso filtro de redução de ruído, seguido das
outras operações base da ferramenta ImageDataGenerator.
--//--
Este conteúdo é uma amostra do livro:
--
Sobre o Autor
4
Fernando Feltrin é Engenheiro da Computação com especializações na área de
ciência de dados e inteligência artificial, Professor licenciado para docência de
nível técnico e superior, Autor de mais de 40 livros sobre programação de
computadores e responsável pelo desenvolvimento e implementação de
ferramentas voltadas a modelos de redes neurais artificiais aplicadas à
radiologia médica (diagnóstico por imagem).
--
Livros
5
Disponível em: Amazon.com.br
Livros de Exercícios Resolvidos e Comentados
Disponível em: Amazon.com.br
Coletâneas PYTHON TOTAL
6
Disponível em: Amazon.com.br

Mais conteúdo relacionado

Semelhante a Aplicando camadas de processamento durante o Aumento Sintético de uma base de dados.pdf

QGIS 2.4: Recorte de Raster via Shapefile (Batch Mode)
QGIS 2.4: Recorte de Raster via Shapefile (Batch Mode)QGIS 2.4: Recorte de Raster via Shapefile (Batch Mode)
QGIS 2.4: Recorte de Raster via Shapefile (Batch Mode)Jorge Santos
 
Trabalho em greenfoot
Trabalho em greenfootTrabalho em greenfoot
Trabalho em greenfootVitor Faria
 
Processamento digital de imagens com gnu octave jotacisio araujo oliveira fli...
Processamento digital de imagens com gnu octave jotacisio araujo oliveira fli...Processamento digital de imagens com gnu octave jotacisio araujo oliveira fli...
Processamento digital de imagens com gnu octave jotacisio araujo oliveira fli...PotiLivre Sobrenome
 
Analise de desempenho_compactadores_asti_2011
Analise de desempenho_compactadores_asti_2011Analise de desempenho_compactadores_asti_2011
Analise de desempenho_compactadores_asti_2011Saulo Marques
 
Openday PUC-RIO - Ferramenta gráfica para modelagem e análise em Engenharia E...
Openday PUC-RIO - Ferramenta gráfica para modelagem e análise em Engenharia E...Openday PUC-RIO - Ferramenta gráfica para modelagem e análise em Engenharia E...
Openday PUC-RIO - Ferramenta gráfica para modelagem e análise em Engenharia E...Opencadd Advanced Technology
 
Emacs - Arquitetura E Design Com Foco No Desenv De Plugins
Emacs - Arquitetura E Design Com Foco No Desenv De PluginsEmacs - Arquitetura E Design Com Foco No Desenv De Plugins
Emacs - Arquitetura E Design Com Foco No Desenv De PluginsJosé Martins da Nobrega Filho
 
Computacao grafica python v2
Computacao grafica python v2Computacao grafica python v2
Computacao grafica python v2Jean Lopes
 
Jason: Componentes personalizados
Jason: Componentes personalizados Jason: Componentes personalizados
Jason: Componentes personalizados Nécio de Lima Veras
 
Aplicação da Automação em uma Impressora 3D
Aplicação da Automação em uma Impressora 3DAplicação da Automação em uma Impressora 3D
Aplicação da Automação em uma Impressora 3DJéferson Daronch
 
Desenvolvimento de Aplicações para o Google App Engine (CPBR5)
Desenvolvimento de Aplicações para o Google App Engine (CPBR5)Desenvolvimento de Aplicações para o Google App Engine (CPBR5)
Desenvolvimento de Aplicações para o Google App Engine (CPBR5)Carlos Duarte do Nascimento
 
Desenvolvimento de aplicações para o Google App Engine
Desenvolvimento de aplicações para o Google App EngineDesenvolvimento de aplicações para o Google App Engine
Desenvolvimento de aplicações para o Google App EngineCampus Party Brasil
 
Algoritmo e estruturas de dados operações com matrizes
Algoritmo e estruturas de dados operações com matrizesAlgoritmo e estruturas de dados operações com matrizes
Algoritmo e estruturas de dados operações com matrizesRADILSON RIPARDO DE FRETIAS
 

Semelhante a Aplicando camadas de processamento durante o Aumento Sintético de uma base de dados.pdf (20)

QGIS 2.4: Recorte de Raster via Shapefile (Batch Mode)
QGIS 2.4: Recorte de Raster via Shapefile (Batch Mode)QGIS 2.4: Recorte de Raster via Shapefile (Batch Mode)
QGIS 2.4: Recorte de Raster via Shapefile (Batch Mode)
 
Trabalho em greenfoot
Trabalho em greenfootTrabalho em greenfoot
Trabalho em greenfoot
 
Processamento digital de imagens com gnu octave jotacisio araujo oliveira fli...
Processamento digital de imagens com gnu octave jotacisio araujo oliveira fli...Processamento digital de imagens com gnu octave jotacisio araujo oliveira fli...
Processamento digital de imagens com gnu octave jotacisio araujo oliveira fli...
 
Analise de desempenho_compactadores_asti_2011
Analise de desempenho_compactadores_asti_2011Analise de desempenho_compactadores_asti_2011
Analise de desempenho_compactadores_asti_2011
 
Openday PUC-RIO - Ferramenta gráfica para modelagem e análise em Engenharia E...
Openday PUC-RIO - Ferramenta gráfica para modelagem e análise em Engenharia E...Openday PUC-RIO - Ferramenta gráfica para modelagem e análise em Engenharia E...
Openday PUC-RIO - Ferramenta gráfica para modelagem e análise em Engenharia E...
 
Curso fotoshp
Curso fotoshpCurso fotoshp
Curso fotoshp
 
CBA 2014
CBA 2014CBA 2014
CBA 2014
 
Ap ferramentas
Ap ferramentasAp ferramentas
Ap ferramentas
 
Emacs - Arquitetura E Design Com Foco No Desenv De Plugins
Emacs - Arquitetura E Design Com Foco No Desenv De PluginsEmacs - Arquitetura E Design Com Foco No Desenv De Plugins
Emacs - Arquitetura E Design Com Foco No Desenv De Plugins
 
Photoshop
PhotoshopPhotoshop
Photoshop
 
Improvement of Image Using Fuzzy Techniques Networks
Improvement of Image Using Fuzzy Techniques Networks Improvement of Image Using Fuzzy Techniques Networks
Improvement of Image Using Fuzzy Techniques Networks
 
Computacao grafica python v2
Computacao grafica python v2Computacao grafica python v2
Computacao grafica python v2
 
M1 teste rec
M1 teste recM1 teste rec
M1 teste rec
 
Jason: Componentes personalizados
Jason: Componentes personalizados Jason: Componentes personalizados
Jason: Componentes personalizados
 
Manual Scribus
Manual ScribusManual Scribus
Manual Scribus
 
Aplicação da Automação em uma Impressora 3D
Aplicação da Automação em uma Impressora 3DAplicação da Automação em uma Impressora 3D
Aplicação da Automação em uma Impressora 3D
 
Desenvolvimento de Aplicações para o Google App Engine (CPBR5)
Desenvolvimento de Aplicações para o Google App Engine (CPBR5)Desenvolvimento de Aplicações para o Google App Engine (CPBR5)
Desenvolvimento de Aplicações para o Google App Engine (CPBR5)
 
Desenvolvimento de aplicações para o Google App Engine
Desenvolvimento de aplicações para o Google App EngineDesenvolvimento de aplicações para o Google App Engine
Desenvolvimento de aplicações para o Google App Engine
 
Algoritmo e estruturas de dados operações com matrizes
Algoritmo e estruturas de dados operações com matrizesAlgoritmo e estruturas de dados operações com matrizes
Algoritmo e estruturas de dados operações com matrizes
 
Aula3
Aula3Aula3
Aula3
 

Aplicando camadas de processamento durante o Aumento Sintético de uma base de dados.pdf

  • 1. 1 Aplicando camadas de processamento durante o Aumento Sintético de uma base de dados No que diz respeito ao processo de aumento sintético de uma base de dados, convencionalmente realizado pelas ferramentas proprietárias das bibliotecas em questão (TensorFlow / Keras), é notável o limitado número de funções aplicáveis para o real tratamento dos dados. Contextualizando para a ferramenta ImageDataGenerator( ), o processamento convencionalmente executado sobre as amostras sintéticas geradas se resume a aplicar zoom, brilho / contraste, seguido de operações morfológicas como espelhar, rotacional, inclinar, esticar, entre outras, deixando muito a desejar nos pontos que de fato seriam um “tratamento” das características que compõem as imagens aqui processadas. Diante deste problema, a ferramenta ImageDataGenerator( ) ao longo do tempo sofreu uma série de atualizações, tendo em uma delas a inclusão de um método dedicado a incorporação de funções de terceiros em meio ao processo de geração de imagens. Em outras palavras, sem perder nenhuma de suas características de tratamento / processamento originais, foi permitido o uso de uma função acessória personalizada para assim estender os meios e métodos os quais o processamento das amostras / imagens de fato demanda. Nesse cenário, a partir de um parâmetro nomeado preprocessing_function é possível atribuir a instância de uma função personalizada, a qual iremos utilizar como meio para aplicação de todos os métodos de tratamento de imagem os quais necessitamos. Internamente o conteúdo da(s) função(ões) que estaremos programando será executado em uma etapa de processamento anterior às ferramentas nativas da classe ImageDataGenerator( ), na camada de desenvolvimento em que estaremos trabalhando, precisamos apenas nos atentar a escrever uma função que execute o tratamento adequado às amostras a serem processadas,
  • 2. 2 retornando seus dados à própria instância da classe / ferramenta ImageDataGenerator. Para que tais conceitos fiquem mais claros, nada melhor que a prática. Em nosso código, supondo uma etapa de pré-processamento a ser aplicada a uma base de dados de um determinado projeto, importamos a biblioteca OpenCV através do comando import cv2, também importamos a ferramenta ImageDataGenerator que será nossa plataforma para aumento sintético das imagens. Na sequência, criamos uma função personalizada chamada filtros( ) que quando instanciada e inicializada obrigatoriamente deverá receber um dado / valor para seu parâmetro nomeado img. Dentro do corpo desta função, sob sua indentação declaramos uma variável local de nome img que inicializa a ferramenta cv2.bilateralFilter( ), um filtro bilateral para redução de ruído muito eficiente em grande parte das aplicações, por sua vez parametrizada com a imagem a ser processada, seguido dos parâmetros nomeados d, sigmaColor e sigmaSpace, que basicamente configuram o diâmetro do bloco / da área a ser processada em tamanho de pixels (9 representa aqui uma matriz 3X3 pixels), também configurando o fator de influência da cor e da diferença espacial dos pixels do bloco, respectivamente, para assim retornar uma redução local de ruído visível nas próprias características da imagem em questão. Dando sequência, já a nível dos parâmetros nomeados da ferramenta ImageDataGenerator( ) atribuímos uma instância do objeto filtros (nossa função personalizada) para o parâmetro nomeado preprocessing_function.
  • 3. 3 Desta forma, cada imagem processada para geração de novas amostras será primeiramente processada por nosso filtro de redução de ruído, seguido das outras operações base da ferramenta ImageDataGenerator. --//-- Este conteúdo é uma amostra do livro: -- Sobre o Autor
  • 4. 4 Fernando Feltrin é Engenheiro da Computação com especializações na área de ciência de dados e inteligência artificial, Professor licenciado para docência de nível técnico e superior, Autor de mais de 40 livros sobre programação de computadores e responsável pelo desenvolvimento e implementação de ferramentas voltadas a modelos de redes neurais artificiais aplicadas à radiologia médica (diagnóstico por imagem). -- Livros
  • 5. 5 Disponível em: Amazon.com.br Livros de Exercícios Resolvidos e Comentados Disponível em: Amazon.com.br Coletâneas PYTHON TOTAL