资源简介

C#图像处理 灰度 拼接 锐化 平滑 灰度反转 源码简单易学,很容易上手C#的图像处理

资源截图

代码片段和文件信息

using System;
using System.Collections.Generic;
using System.ComponentModel;
using System.Data;
using System.Drawing;
using System.Linq;
using System.Text;
using System.Windows.Forms;
using System.Drawing.Drawing2D;
using System.Threading;

namespace 像素点处理
{

    public partial class Form1 : Form
    {
        public Form1()
        {
            InitializeComponent();
        }

        private void button1_Click(object sender EventArgs e)
        {
            OpenFileDialog imageopen = new OpenFileDialog();

            imageopen.title = “请打开图像文件“;

            imageopen.InitialDirectory = @“C:\Users\Administrator\Desktop“;

            imageopen.Filter = “(图像文件)*.bmp;jepg;jpg;gif;png|*.bmp;*.jepg;*.jpg;*.gif;*.png“;

            imageopen.FilterIndex = 1;

            imageopen.RestoreDirectory = true;

            if (imageopen.ShowDialog() == DialogResult.OK)
            {
                this.progressBar1.Value = 100;
                this.pictureBox1.Image = System.Drawing.Bitmap.FromFile(imageopen.FileName);

            }
        }

        private void button1_Click_1(object sender EventArgs e)//灰度化一个图像
        {
            Form1 sample = new Form1();
            ThreadStart ts = new ThreadStart(sample.XianC);

            Thread t = new Thread(ts);

            // 启动.
            t.Start();





            Bitmap bmp = (Bitmap)this.pictureBox1.Image;
            //Bitmap bmp = new Bitmap(@“C:\Users\Administrator\Desktop\a.jpg“);
           
            Rectangle rect = new Rectangle(0 0 bmp.Width bmp.Height);//给定一个矩阵,括号里为对角线两点的坐标

            System.Drawing.Imaging.BitmapData bmpData = bmp.LockBits(rect System.Drawing.Imaging.ImageLockMode.ReadWrite bmp.PixelFormat);

            IntPtr ptr = bmpData.Scan0;//获取或设置位图中第一个像素数据的地址。它也可以看成是位图中的第一个扫描行。 

            int bytes = bmp.Width * bmp.Height * 3;//这是针对每像素24位图的专用(3个字节)

            byte[] rgbValues = new byte[bytes];//声明一个数组

            System.Runtime.InteropServices.Marshal.Copy(ptr rgbValues 0 bytes);//把RGB空间的像素值COPY到这个数组

            double colorTemp = 0;

            /*for (int i = 0; i < rgbValues.Length; i += 3)
            {

                colorTemp = rgbValues[i + 2] * 0.299 + rgbValues[i + 1] * 0.587 + rgbValues[i] * 0.114;

                rgbValues[i] = rgbValues[i + 1] = rgbValues[i + 2] = (byte)colorTemp;

            }*/
            /*for (int counter = 0; counter < rgbValues.Length; counter += 3)
                rgbValues[counter] = 255; //把红色都改为255*/
            for (int counter = 0; counter < rgbValues.Length; counter += 3)
            {
                //colorTemp = rgbValues[counter] * 0.4;
                //rgbValues[counter] = (byte)colorTemp; //把0值都改为255
                this.richTextBox1.Text += Convert.ToString(rgbValues[counter])+“ “;
                
            }
            this.progressBar1.Value = 100;
            System.Runtime.InteropServices.Marsha

 属性            大小     日期    时间   名称
----------- ---------  ---------- -----  ----

     文件      15360  2012-05-06 22:51  像素点处理\像素点处理\bin\Debug\像素点处理.exe

     文件      34304  2012-05-06 22:51  像素点处理\像素点处理\bin\Debug\像素点处理.pdb

     文件      11608  2012-05-07 13:23  像素点处理\像素点处理\bin\Debug\像素点处理.vshost.exe

     文件        490  2010-03-17 22:39  像素点处理\像素点处理\bin\Debug\像素点处理.vshost.exe.manifest

     文件      13655  2012-05-06 22:51  像素点处理\像素点处理\Form1.cs

     文件      11547  2012-05-06 22:51  像素点处理\像素点处理\Form1.Designer.cs

     文件       6020  2012-05-06 22:51  像素点处理\像素点处理\Form1.resx

     文件       6201  2012-05-06 22:51  像素点处理\像素点处理\obj\x86\Debug\DesignTimeResolveAssemblyReferencesInput.cache

     文件        534  2012-05-06 22:51  像素点处理\像素点处理\obj\x86\Debug\GenerateResource-ResGen.read.1.tlog

     文件        842  2012-05-06 22:51  像素点处理\像素点处理\obj\x86\Debug\GenerateResource-ResGen.write.1.tlog

     文件       1227  2012-05-07 13:23  像素点处理\像素点处理\obj\x86\Debug\像素点处理.csproj.FileListAbsolute.txt

     文件      15360  2012-05-06 22:51  像素点处理\像素点处理\obj\x86\Debug\像素点处理.exe

     文件        180  2012-05-06 22:51  像素点处理\像素点处理\obj\x86\Debug\像素点处理.Form1.resources

     文件      34304  2012-05-06 22:51  像素点处理\像素点处理\obj\x86\Debug\像素点处理.pdb

     文件        180  2012-03-28 22:37  像素点处理\像素点处理\obj\x86\Debug\像素点处理.Properties.Resources.resources

     文件        496  2012-03-28 22:27  像素点处理\像素点处理\Program.cs

     文件       1362  2012-03-28 22:27  像素点处理\像素点处理\Properties\AssemblyInfo.cs

     文件       2880  2012-03-28 22:27  像素点处理\像素点处理\Properties\Resources.Designer.cs

     文件       5612  2012-03-28 22:27  像素点处理\像素点处理\Properties\Resources.resx

     文件       1100  2012-03-28 22:27  像素点处理\像素点处理\Properties\Settings.Designer.cs

     文件        249  2012-03-28 22:27  像素点处理\像素点处理\Properties\Settings.settings

     文件       3582  2012-03-28 22:37  像素点处理\像素点处理\像素点处理.csproj

     文件        887  2012-03-28 22:27  像素点处理\像素点处理.sln

    ..A..H.     18944  2012-05-07 13:48  像素点处理\像素点处理.suo

     目录          0  2012-03-28 22:27  像素点处理\像素点处理\obj\x86\Debug\TempPE

     目录          0  2012-05-23 22:38  像素点处理\像素点处理\obj\x86\Debug

     目录          0  2012-05-23 22:38  像素点处理\像素点处理\bin\Debug

     目录          0  2012-05-23 22:38  像素点处理\像素点处理\obj\x86

     目录          0  2012-05-23 22:38  像素点处理\像素点处理\bin

     目录          0  2012-05-23 22:38  像素点处理\像素点处理\obj

............此处省略6个文件信息

评论

共有 条评论