MYMahmoudYassin / Interpolation-of-Seismic-Data-Using-Compressive-Sensing

Geek Repo:Geek Repo

Github PK Tool:Github PK Tool

Interpolation of Seismic Data Using Compressive Sensing

Interpolation of Seismic data traces is a very important topic for the oil and gas industry. One of the interpolation methods is using Compressive Sensing. We managed to apply the theory on a sinusoidal signal perfectly. Then we applied CS to interpolate seismic data, but unfortunately the results were bad compared to basic interpolation methods like linear interpolation. The main obstacle that we faced is finding a sparse transform for seismic data and applying compressive sensing using that transform. We found in the literature that seismic images are sparse in the curvelet transform. However, we could not construct the transform basis πœ“ and therefore failed in applying compressive sensing on seismic data.
This project was a part of class EE562 – DIGITAL SIGNAL PROSSING I -KFUPM-spring 2022

  • Project members: Mahmoud Yassin Mahmoud and Mohamed Hafez Mohamed
  • Submitted to: Prof. Wail Mousa
    -----------------------------------------------------vibrator

image

The organization of the codes as follow:

  1. compressiveSensingTest
    (implementation of compressive sensing theory on sinusoid signal)(use CVX for optimization)
  2. compressed_sensing_example_interpo1
    compressed sensing interpolation for Seismic data
    (missing data is random values not traces) (We assume that the Seismic shot has a sparse representation in the
    DCT domain (not very sparse in practice -_-))
  3. compressed_sensing_interpolation2
    (final version that perform interpolation using Copressive sensing and linear interpolation and
    comparing between them in terms of SNR)
  4. LinearVsLinearCV
    ( perform linear interpolation and new version which is linear interpolation and compressive sensing and comparing the results)

reag_image

Some Successful Results:

Firstly, to prove the concept of compressive sensing, we started by a simple example of a sinusoidal signal. Let π‘“π‘Ž(𝑑) = sin(1394πœ‹π‘‘) + sin (3266πœ‹π‘‘) If we sample π‘“π‘Ž at 40 kHz for 1/8 seconds, we get a vector 𝑓 that has 5000 samples. Taking 500 random samples of 𝑓, we get 𝑏 as illustrated below. Note the sparsity of π‘₯ in the DCT domain.

1 2

Secondly, We developed an interporaltion algorithm based on the CS where we designed a measurament matrix that satisfies the problem requirments and tested with an image with the dimensions 50*50.

image image

About

License:GNU General Public License v3.0


Languages

Language:MATLAB 45.9%Language:HTML 27.0%Language:C 25.1%Language:TeX 1.7%Language:Mathematica 0.2%Language:JavaScript 0.1%Language:CSS 0.1%Language:M 0.0%