Escolar Documentos
Profissional Documentos
Cultura Documentos
11 de junho de 2018
Colocação do Problema:
• A produção de óleo de um reservatório de petróleo só é economicamente viável se a quantidade
de óleo disponível a produção for grande o suficiente para cobrir as despesas e garantir um
lucro mínimo a companhia. Em muitos casos a quantidade de óleo é grande, mas as carac-
terísticas do reservatório tornam a produção muito custosa; entre estes casos podemos citar
reservatórios com óleos muito pesados, reservatórios com baixa porosidade, reservatórios com
baixa permeabilidade. Para avaliar a capacidade de produção são necessários estudos sobre o
reservatório. Esta caracterização pode ser feita de diversas formas, como exemplo, testes de
pressão, perfilagem, sísmica, etc. Mas a mais efetiva e direta é a análise em laboratório de
amostras do reservatório.
• Sendo assim, para uma melhor caracterização das rochas reservatório, são furados poços e
obtidas amostras que são levadas para os laboratórios do CENPES (e ou do LENEP). Estas
amostras costumam ser cilíndricas (de alto custo) ou amostras de calha (amostras de baixo
custo obtidas durante a perfuração).
• Além dos tradicionais ensaios de laboratório (porosidade, permeabilidade,...), são preparadas
lâminas de amostras, que serão processadas usando um “Laboratório Virtual de Petrofísica”
(um software como o Imago, o SAIL o LVP).
• Uma grande vantagem do laboratório virtual é que uma imagem pode ser usada em milhares
de análises, enquanto alguns ensaios (como porosimetria a mercúrio) são destrutivos. Outra
vantagem é poder visualizar detalhes internos dos poros (sua física). Veremos a seguir a
sequência desta metodologia.
Figura 1: Sequência do processamento de imagens de rochas reservatório
Figura 2: Sequência do processamento de imagens de rochas reservatório - comentada
Figura 3: Sequência do processamento de imagens de rochas reservatório - preparação amostras
Figura 4: Sequência do processamento de imagens de rochas reservatório - corte de amostras 1
Figura 5: Sequência do processamento de imagens de rochas reservatório - corte de amostras 2
Figura 6: Sequência do processamento de imagens de rochas reservatório - corte de amostras 3
Figura 7: Sequência do processamento de imagens de rochas reservatório - corte de amostras 4
Figura 8: Sequência do processamento de imagens de rochas reservatório - amostras cenpes
Figura 9: Sequência do processamento de imagens de rochas reservatório - Politriz
Figura 10: Sequência do processamento de imagens de rochas reservatório - corte amostras e
preparação lâminas para polimento
Figura 12: Sequência do processamento de imagens de rochas reservatório - corte amostras e
preparação bolachas para polimento
Figura 13: Sequência do processamento de imagens de rochas reservatório - equipamentos para
polimento de amostras
Figura 14: Sequência do processamento de imagens de rochas reservatório - Lâmina e Amostra do
tipo bolacha já polidas com politriz
Figura 15: Sequência do processamento de imagens de rochas reservatório - Laboratório Petrografia
usado para adquirir imagens das amostras usando microscópio ótico
Figura 16: Sequência do processamento de imagens de rochas reservatório - Imagem de rocha Berea
Figura 17: Sequência do processamento de imagens de rochas reservatório - Pré-processamento
usando filtros do software livre Gimp
Figura 18: Sequência do processamento de imagens de rochas reservatório - Segmentação, separação
dos poros e sítios usando Gimp
Figura 19: Sequência do processamento de imagens de rochas reservatório - Imagens 3D Recon-
struídas, prontas para simulação
Figura 20: Sequência do processamento de imagens de rochas reservatório - microtomografo do
CENPES, obtem imagem em 3D
Figura 21: Sequência do processamento de imagens de rochas reservatório - Amostras simu-
ladas(saturações, configurações equilíbrio, água "azul escuro" e óleo "verde")
Figura 22: Sequência do processamento de imagens de rochas reservatório - Software ANAIMP
Figura 23: Sequência do processamento de imagens de rochas reservatório - Software Imago
Figura 24: Sequência do processamento de imagens de rochas reservatório - Software SAIL
Figura 25: Sequência do processamento de imagens de rochas reservatório - Software LVP
Figura 26: Saídas geradas pelo programa cujo código em C++ esta apresentado a seguir
Figura 27: Saídas geradas pelo programa: Imagem original a esquerda, filtrada com passa baixa a
direita e binarizada no centro. Histograma de cores e função autocorrelação.
Especificação do Software
• Desenvolver um sistema de software que realize processamentos básicos de imagens de rochas
reservatório de petróleo.
• O sistema deve ser multiplataforma (Windows, GNU/Linux), deve ter como base bibliotecas
GPL, usar a linguagem C++ e ter interface simplificada - em modo texto.
• Imagens bidimensionais.
• Abaixo cria o ponteiro imgFiltrada que aponta para a imagem criada com make_shared.
• Uma imagem também tem um atributo numeroCores. Se a imagem for binária os valores de
cor, armazenados na matriz, são 0 - preto e 1 - branco. Se a imagem for em tons de cinza
os valores de cor são 0 - preto e 255 - branco, valores entre 0 e 255 representam os diferentes
níveis de cinza.
• Note que o histograma de uma imagem pode ser representado como um vetor com dimensão
numeroCores da imagem, e que armazena em cada posição i, o número total de píxeis da
intensidade (cor) i.
Classe CBinarizacao
• Binarização é um processo de segmentação que separa o objeto de interesse do fundo, consiste
na conversão de uma imagem em tons de cinza em uma imagem binária, onde os pixeis podem
assumir apenas dois valores, 0 ou 1 (preto ou branco). O valor do histograma que melhor
separa a imagem em objeto/fundo chama-se threshold (Th). A imagem binária é determinada
pela equação 1.
(
1, se Im[x][y] > Th 0 ≤ x < nx
Imbin[x][y] = (1)
0, se Im[x][y] ≤ Th 0 ≤ y < ny
• A porosidade pode ser calculada usando-se imagens binarizadas. Basta calcular a relação da
área de poros (píxeis pretos) pela área total da imagem (nx.ny).
Classe CAutocorrelacao
• Outra propriedade importante de uma imagem Im[x][y] é sua função autocorrelação c[u],
dada pela equação abaixo.
• Note que, para cada valor de u (deslocamento da imagem), determina-se se Im[x][y] ≡ Im[x+
u][y]. Caso verdadeiro, acrescenta-se 1 ao valor de c[u].
( AutoCorrelacao[u] = c[u] =
Pnx Pny 1, se Im[x][y] ≡ Im[x + u][y] 0 ≤ x < nx (3)
x=0 y=0
0, se Im[x][y] 6= Im[x + u][y] 0 ≤ y < ny
• Os raios da máscara são dados por: RaioX = (nx − 1)/2 e RaioY = (ny − 1)/2.
Classe CFEspacial
• Go(img) e o operator(img) implementam o cálculo do filtro espacial em sí; Ou seja, realizam a
convolução do núcleo ou kernel do filtro G(x,y) com a imagem I(x,y). No cálculo da convolução
o novo valor de intensidade do pixel I(x,y) é função da intensidade de seus vizinhos e dos valores
do kernel G(x,y); no mundo discreto o kernel é representado por uma máscara(CMascara). Ou
seja, o novo valor do pixel central é calculado multiplicando-se os elementos da máscara pelos
píxeis da imagem, elemento a elemento; soma-se o produto e dividi-se pelo peso da máscara.
Para cada píxel [i][j] da imagem e píxel [k][l] da máscara realiza-se a operação:
P P
img[i][j] = k l masc[k][l] • img[i + k − RaioX][j + l − RaioY ]
+1 +1 +1
+1 +1 +1
+1 +1 +1
-1 -1 -1
-1 +9 -1
-1 -1 -1
+0 -1 +0
-1 +4 -1
+0 -1 +0
1 − x²−y²
• ( ) CFEGaussiano, máscara do filtro gaussiano G(x, y) = 2πσ e
2σ² (peso = somatório valores)
Figura 31: Filtro gaussiano
Questões:
Questão 1 (peso 2):
• A porosidade de uma rocha reservatório é dada pela razão do volume de vazios, Vv pelo volume
total da amostra Vt, φ = VVvt . Você precisa implementar o cálculo da porosidade.
Questão 2 (peso 4):
• Monte uma classe CImagem, completa.
• Implementar sobrecarga operador(). Recebe uma imagem e calcula sua função autocorrelação.
• Implementar método visualizar. Vizualiza o gráfico de autocorrelação usando o gnuplot.
• Sobrecarregar os operadores << e >> para ler e salvar dados vetor autocorrelação em disco.