Proszę pomóc z programą: muszę usunąć określony obiekt z bitmapy. Na przykład, mam obraz, który przedstawia pole pod niebiem. Muszę wyciąć nieba z obrazka (w Paint na przykład), wstawić obraz osadzony w programę, zapisać go piksel po pikselu w jakimś liście, wziąć obraz oryginalny i po kliknięciu konkretnego buttona, za pomogą tych pikselej zapisanych w liście, pozostawić na zdjęciu tylko niebo. Prośzę pomóc w realizacji tego kodu! Mam część, ale nie wiem, co robię żle.

using System;
using System.Collections.Generic;
using System.ComponentModel;
using System.Data;
using System.Drawing;
using System.Drawing.Imaging;
using System.Linq;
using System.Text;
using System.Threading.Tasks;
using System.Windows.Forms;
 
namespace WindowsFormsApplication18
{
    public partial class Form1 : Form
    {
        Graphics g;
        Bitmap bmp;
        Bitmap bmp2;
 
 
        public Form1()
        {
            InitializeComponent();
            g = pictureBox1.CreateGraphics();
        }
 
        private void button1_Click(object sender, EventArgs e)
        {
            openFileDialog1.Filter = "JPG(*.JPG)|*.jpg";
 
            if (openFileDialog1.ShowDialog() == DialogResult.OK)
            {
                bmp = new Bitmap(openFileDialog1.FileName);
 
                
                pictureBox1.Image = bmp;
            }
        }
 
 
 
        public void button3_Click(object sender, EventArgs e)
        {
 
            Bitmap one = new Bitmap(pictureBox1.Image);
            Bitmap two = new Bitmap(pictureBox2.Image);
            
 
 
            for (int q = 0; q <= one.Width - 1; q++)
                for (int z = 0; z <= one.Height - 1; z++)
                {
 
                    for (int f = 0; f <= two.Width - 1; f++)
                        for (int s = 0; s <= two.Height - 1; s++)
                        {
                            if (one.GetPixel(q, z) == two.GetPixel(f, s))
                               {
                                one.SetPixel(q, z, bmp.GetPixel(q, z));
                               }
                             else
                             {
                               one.SetPixel(q, z, Color.White);
                           
                        }
                }
            
 
            pictureBox1.Image = bmp;
        }
 
        private void button2_Click(object sender, EventArgs e)
        {
            openFileDialog2.Filter = "JPG(*.JPG)|*.jpg";
 
            if (openFileDialog2.ShowDialog() == DialogResult.OK)
            {
                bmp2 = new Bitmap(openFileDialog2.FileName);
 
                
                pictureBox2.Image = bmp2;
            }
        }
 
    }
}