دانلود سورس کد پردازش تصویر در سی شارپ #C

دانلود سورس کد پردازش تصویر در سی شارپ #C
سورس کدی که از این قسمت میتوانید دانلود کنید برنامه جالب پردازش تصویر با زبان سی شارپ می باشد.
در این برنامه کاربردی شما میتوانید مفهوم پردازش تصویر را درک کنید.
با اجرای سورس پردازش تصویر با #C، برای شما فرمی باز میشود که شما از طریق آن میتوانید دو عکس را وارد کنید و آنها را با هم مقایسه کنید. در این فرم با کلیک روی دکمه های "گرفتن تصویر باکس 1 و 2" میتوانید از طریق وب کم سیستم یا لپ تاپتان عکس بگیرید و یا با کلیک دکمه های "باز کردن تصاویر" تصاویری را برای باکس های مربوطه انتخاب و وارد فرم خود نمایید. با کلیک روی دکمه "آنالیز" کنار هر باکس، تصویر مورد نظر پردازش میشود و تعداد پیکسل رنگ هر عکس به همراه کد رنگ تصاویر نشان داده میشود و در قسمت لیست گزارشات، تصاویر وارد شده از نظر اندازه و رنگ با هم مقایسه میگردند.
برنامه اصلی پردازش تصویر با سی شارپ را از پایین صفحه دانلود نمایید.
سورس پردازش تصویر را که در تمام نسخه های ویژوال استودیو قابل استفاده است در زیر مشاهده میکنید.
using System;
using System.Collections.Generic;
using System.ComponentModel;
using System.Data;
using System.Drawing;
using System.Text;
using System.Windows.Forms;
namespace Image_Proccessing
{
public partial class Form1 : Form
{
public Form1()
{
InitializeComponent();
}
int count = 0;
int count1 = 0;
int ix = 0;
Bitmap bimpx,bimpx1;
private void button1_Click(object sender, EventArgs e)
{
string x;
openFileDialog1.ShowDialog();
x = System.Windows.Forms.DialogResult.OK.ToString();
if ( x=="OK")
{
pictureBox1.Load(openFileDialog1.FileName);
bimpx = new Bitmap(openFileDialog1.FileName);
listBox1.Items.Add("اندازه تصویر = " + pictureBox1.Image.Width.ToString() + " در " + pictureBox1.Image.Height.ToString() + " = " + (pictureBox1.Image.Width * pictureBox1.Image.Height).ToString() + " پیکسل");
}
}
private void button2_Click(object sender, EventArgs e)
{
//On Error Resume Next VBConversions Warning: On Error Resume Next not supported in C#
listBox2.Items.Clear();
listBox3.Items.Clear();
count = 0;
int i,a;
int j,b;
a = pictureBox1.Image.Height;
b = pictureBox1.Image.Width;
for (i = 0; i < b; i++)
{
for (j = 0; j {
add2list(bimpx.GetPixel(i, j).ToString());
Application.DoEvents();
}
}
listBox1.Items.Add("تعداد رنگ ها = " + count.ToString());
}
private void add2list(string col)
{
if (listBox2.Items.Contains(col))
{
listBox3 .Items[listBox2.FindStringExact(col)] = System.Convert.ToInt32(listBox3 .Items[listBox2 .FindStringExact(col)]) + 1;
}
else
{
listBox2.Items.Add(col);
listBox3.Items.Add(1);
count += 1;
}
}
private void listBox2_SelectedIndexChanged(object sender, EventArgs e)
{
listBox3.SelectedIndex = listBox2.SelectedIndex;
}
private void button4_Click(object sender, EventArgs e)
{
string x;
openFileDialog1.ShowDialog();
x = System.Windows.Forms.DialogResult.OK.ToString();
if ( x=="OK")
{
pictureBox2.Load(openFileDialog1.FileName);
bimpx1 = new Bitmap(openFileDialog1.FileName);
listBox6.Items.Add("اندازه تصویر = " + pictureBox2.Image.Width.ToString() + " در " + pictureBox2.Image.Height.ToString() + " = " + (pictureBox2.Image.Width * pictureBox2.Image.Height).ToString() + " پیکسل");
}
}
private void add2list1(string col)
{
if (listBox5.Items.Contains(col))
{
listBox4.Items[listBox5.FindStringExact(col)] = System.Convert.ToInt32(listBox4.Items[listBox5.FindStringExact(col)]) + 1;
}
else
{
listBox5.Items.Add(col);
listBox4.Items.Add(1);
count1 += 1;
}
}
private void button3_Click(object sender, EventArgs e)
{ //On Error Resume Next VBConversions Warning: On Error Resume Next not supported in C#
listBox5.Items.Clear();
listBox4.Items.Clear();
count1 = 0;
int i, a;
int j, b;
a = pictureBox2.Image.Height;
b = pictureBox2.Image.Width;
for (i = 0; i < b; i++)
{
for (j = 0; j < a; j++)
{
add2list1(bimpx1.GetPixel(i, j).ToString());
Application.DoEvents();
}
}
listBox6.Items.Add("تعداد رنگ ها = " + count1.ToString());
}
private void listBox5_SelectedIndexChanged(object sender, EventArgs e)
{
listBox4.SelectedIndex = listBox5.SelectedIndex;
}
private void Form1_Load(object sender, EventArgs e)
{
this.WebCamCapture.TimeToCapture_milliseconds = 1;
WebCamCapture.Start(0);
label7.Text = "";
label8.Text = "";
label9.Text = "";
label10.Text = "";
}
private void button5_Click(object sender, EventArgs e)
{
//گزارش وجود اختلاف در سایز
int A, B, C, D,index,j;
string s, s1;
A = pictureBox1.Image.Height;
B = pictureBox1.Image.Width;
C = pictureBox2.Image.Height;
D = pictureBox2.Image.Width;
if ((A == C) && (B == D))
{ label7.Text="در سایز تصاویر اختلافی دیده نمی شود";
}
else
{
if ((A != C) && (B != D))
{
label7.Text = "در عرض و طول دو تصویر اختلاف وجود دارد";
}
else if (A != C ||(B != D) )
{
label7.Text = "در دو تصویر اختلاف وجود دارد";
}
}
//گزارش اختلاف تعداد رنگ
if ((count == 0) && (count1 == 0))
{
label8.Text = "تصویری وارد نشده است";
}
else
{
if (count != count1)
{
label8.Text = "بین رنگ تصاویر اختلاف دیده می شود";
}
else
{
label8.Text = "بین رنگ تصاویر اختلاف دیده نمی شود";
}
}
//فردیس-سپانته-مستقیم تا آتش نشانی-میدان ارتش کوجه دوم داخل-ارایشگاه زنانه باجه تلفنومغازه شبستری
//گزارش اختلاف تعداد پیکسل
if (listBox3.Items.Count < listBox4.Items.Count) {
j = listBox3.Items.Count;
}
else
{
j = listBox4.Items.Count;
}
for (index=0; index < j; index ++)
{
s = listBox3.Items[index].ToString();
s1 = listBox4.Items[index].ToString();
if (s != s1)
{
label9.Text = "در تعداد پیکسل رنگ اختلاف است";
label10.Text = "-----------------------------------";
}
else
{
label9.Text = "در تعداد پیکسل رنگ اختلاف نیست";
label10.Text = "-----------------------------------";
}
}
}
private void WebCamCapture_ImageCaptured(object source, WebCam_Capture.WebcamEventArgs e)
{
this.pictureBox3.Image = e.WebCamImage;
}
private void button6_Click(object sender, EventArgs e)
{
int alan = ix;
pictureBox3.Image.Save("d:pic0" + ix++ + ".jpg", System.Drawing.Imaging.ImageFormat.Jpeg);
pictureBox1.Load("d:pic0" + alan + ".jpg");
bimpx = new Bitmap("d:pic0" + alan + ".jpg");
listBox1.Items.Add("اندازه تصویر = " + pictureBox1.Image.Width.ToString() + " در " + pictureBox1.Image.Height.ToString() + " = " + (pictureBox1.Image.Width * pictureBox1.Image.Height).ToString() + " پیکسل");
}
private void button7_Click(object sender, EventArgs e)
{
int alan = ix;
pictureBox3.Image.Save("d:pic0" + ix++ + ".jpg", System.Drawing.Imaging.ImageFormat.Jpeg);
pictureBox2.Load("d:pic0" + alan + ".jpg");
bimpx1 = new Bitmap("d:pic0" + alan + ".jpg");
listBox6.Items.Add("اندازه تصویر = " + pictureBox2.Image.Width.ToString() + " در " + pictureBox2.Image.Height.ToString() + " = " + (pictureBox2.Image.Width * pictureBox2.Image.Height).ToString() + " پیکسل");
}
private void button8_Click(object sender, EventArgs e)
{
System.Diagnostics.Process.Start("http://WWw.SourceCodes.ir");
}
}
}
سورس کد پردازش تصویر با #C را بصورت رایگان از این قسمت دانلود کنید
حجم فایل 407 KB
عالیی بوود مرسی واقعا
ممنون ، خوب بود