PDA

View Full Version : مقایسه دو تصویر



fortex
یک شنبه 24 آذر 1392, 11:22 صبح
سلام دوستان دو تا تصویر توی دوتا picturebox دارم چطور این دو تا picturebux رو باهم مقایسه کنم و در صورت مساوی بودن صد درصد به من اعلام کنه؟

sagggad
یک شنبه 24 آذر 1392, 11:29 صبح
داداش کاری نداره که:
(if (pictureBox1.Image == pictureBox2.Image
;("برابرند")MessageBox.Show
موفق باشید

fortex
یک شنبه 24 آذر 1392, 11:31 صبح
تست کردم جواب نداد .

sagggad
یک شنبه 24 آذر 1392, 11:34 صبح
داداش دارم واست جستجو میکنم

FATEMEH@
یک شنبه 24 آذر 1392, 11:47 صبح
1 سری یه این آدرس بزنید
منم خودم همنی مشکل رو دارم اینو فعلا پیدا کردم
شاید مشکلمون حل بشهhttp://www.mspsoft.com/1390/11/27/%D8%AF%D8%A7%D9%86%D9%84%D9%88%D8%AF-%D8%B3%D9%88%D8%B1%D8%B3-%D9%BE%D8%B1%D9%88%DA%98%D9%87-%D9%85%D9%82%D8%A7%D9%8A%D8%B3%D9%87-%D8%AF%D9%88-%D8%AA%D8%B5%D9%88%D9%8A%D8%B1-%D8%AF%D8%B1-%D8%B3%D9%8A/

fortex
یک شنبه 24 آذر 1392, 11:51 صبح
این روش میاد دوتا تصویرو تو ارایه میریزه اما مستقیم اونا رو بارگذاری میکنه و میریزه توی ارایه . مشکل اینجاست که تصویری که توی picturebux چطور میشه ریخت توی ارایه

sagggad
یک شنبه 24 آذر 1392, 11:53 صبح
منم دقیقا قبل از شما به این آدرس رفتم اما اون چیزی که ما میخوایم نیست. من همین برنامه رو رفتم تو وی بی بنویسم که دیدم اصلا یه همچین مقایسه ای رو نادرست میدونه و زیرش خط آبی میکشه.یعنی کلا ویژوال استودیو نمیتونه کل عکس رو مقایسه کنه.من دارم به یه نتایجی میرسم که تا 10 دقیقه دیگه تو همین تایپیک قرارمیدم
موفق باشید

FATEMEH@
یک شنبه 24 آذر 1392, 11:58 صبح
اره من به همین رسیدم

sagggad
یک شنبه 24 آذر 1392, 12:02 عصر
بفرمایید دوستان گلم گیرش آوردم:
این کدش:
(if (pictureBox1.Image.VerticalResolution == pictureBox2.Image.VerticalResolution
{
;("برابرند")MessageBox.Show
}
این هم سورسش:
لینک دانلود:113982

امیدوارم تونسته باشم اون چیزی که میخواین رو براتون درست کنم!

habibb
یک شنبه 24 آذر 1392, 12:03 عصر
برای مقایسه محتوای دو پیکچرباکس

1.بیت هاشونو با هم مقایسه کنید
2.پیکسل هاشونو با هم مقایسه کنید با مختصات هر پیکسل در هر دو عکس
3.یا با ناتپد به متن تبدیل کنید عکسو و متنی عکس ها رو با هم مقایسه کنید
4.یک روش غیر دقیق هم اینه که حجم دو عکس رو تا مرحله کیلوبیت با هم مقایسه کنید

FATEMEH@
یک شنبه 24 آذر 1392, 12:10 عصر
طبق گفته دوستمون پس همون لینکه باید درست باشه
چون سایز و پیکسل رو مقایسه کرده

sagggad
یک شنبه 24 آذر 1392, 12:26 عصر
دوستان ببخشید اون یکی مشکل داشت.این کد درسته:
(if (pictureBox1.Image.PhysicalDimension == pictureBox2.Image.PhysicalDimension

;("برابرند")MessageBox.Show

این هم سورسش:113983

ببخشید

habibb
یک شنبه 24 آذر 1392, 12:38 عصر
دوستان ببخشید اون یکی مشکل داشت.این کد درسته:
(if (pictureBox1.Image.PhysicalDimension == pictureBox2.Image.PhysicalDimension

;("برابرند")MessageBox.Show

این هم سورسش:113983

ببخشید

Gets the width and height of this image.

دقیق نیست

sagggad
یک شنبه 24 آذر 1392, 12:42 عصر
چرا دقیق نیست دوست من؟؟
ضمنا در حال حاضر احتیاج به دقت خیلی بالا نداره این دوست ما.درسته؟؟

FATEMEH@
یک شنبه 24 آذر 1392, 12:45 عصر
پس چی درسته دوست عزیز؟

FATEMEH@
یک شنبه 24 آذر 1392, 12:48 عصر
نمیشه 1 جوری با اسم عکسا مقایسه کرد؟؟؟؟!!!:اشتباه:

habibb
یک شنبه 24 آذر 1392, 13:01 عصر
طبق گفته دوستمون پس همون لینکه باید درست باشه
چون سایز و پیکسل رو مقایسه کرده
این دقیق تره

FATEMEH@
یک شنبه 24 آذر 1392, 13:03 عصر
این دقیق تره
همون لینکه؟ من خیلی نمیخام دقیقا باشه
نمیشه با اسم چک کرد؟

fortex
یک شنبه 24 آذر 1392, 13:17 عصر
با اسم که فایده نداره.
ممکنه دوتا تصویر متفاوت باشه با یک اسم.

FATEMEH@
یک شنبه 24 آذر 1392, 13:18 عصر
با اسم که فایده نداره.
ممکنه دوتا تصویر متفاوت باشه با یک اسم.
نه من تصویرام مشخصه خب
http://barnamenevis.org/showthread.php?57041-%DA%86%DA%AF%D9%88%D9%86%DA%AF%DB%8C-%D9%85%D9%82%D8%A7%DB%8C%D8%B3%D9%87-%D9%BE%DB%8C%DA%A9%D8%B3%D9%84-%D8%A8%D9%87-%D9%BE%DB%8C%DA%A9%D8%B3%D9%84-%D8%AA%D8%B5%D9%88%DB%8C%D8%B1-%D8%AF%D8%B1-%D8%B3%DB%8C-%D8%B4%D8%A7%D8%B1%D9%BE
1 سری به این تاپیک بزنید جالبه

habibb
یک شنبه 24 آذر 1392, 13:21 عصر
همون لینکه؟ من خیلی نمیخام دقیقا باشه
نمیشه با اسم چک کرد؟

وقتی جواب معلومه چرا بریم سراغه روش های غیر دقیق

FATEMEH@
یک شنبه 24 آذر 1392, 13:24 عصر
وقتی جواب معلومه چرا بریم سراغه روش های غیر دقیق

اخه استاد یاد نداده دقیقشو شاید بعد گیر بده
این دقیقه؟

Bitmap b1 = new Bitmap(pictureBox93.BackgroundImage);
Bitmap b2 = new Bitmap(pictureBox48.BackgroundImage);
if (b1.GetPixel(20, 20) == b2.GetPixel(20,20))
MessageBox.Show("The First Pixel is Similar");

برا من جواب داد کارم حل شد

fortex
یک شنبه 24 آذر 1392, 13:25 عصر
دقیق تر منظورتونو بگید فکر کنم چیزی که تو فکر شما هست با چیزی که تو فکر من هست فرق داره. و برای شما راه کار ساده تری داره.
اگه شما تصویر هاتون مشخصه و اسم و ادرس دارید که میتونید مقایسه کنید.( با یه شرط ساده)
اما اگر مقایسه تصویر دارید راهی به جز مقایسه پیکسل به پیکسل نیست.
اگر مشکلتون با picturebux هست ( مثل من) یه راه به ذهنم رسید اونم اینه که عکس ها رو سیو کنیم و بعد با فراخوانی بریزیمش تو ارایه و بایت به بایت مقایسه کنیم.

habibb
یک شنبه 24 آذر 1392, 13:30 عصر
دقیق تر منظورتونو بگید فکر کنم چیزی که تو فکر شما هست با چیزی که تو فکر من هست فرق داره. و برای شما راه کار ساده تری داره.
اگه شما تصویر هاتون مشخصه و اسم و ادرس دارید که میتونید مقایسه کنید.( با یه شرط ساده)
اما اگر مقایسه تصویر دارید راهی به جز مقایسه پیکسل به پیکسل نیست.
اگر مشکلتون با picturebux هست ( مثل من) یه راه به ذهنم رسید اونم اینه که عکس ها رو سیو کنیم و بعد با فراخوانی بریزیمش تو ارایه و بایت به بایت مقایسه کنیم.

من وسواس دارم بیت به بیت
ولی بایت به بایت هم میشه

خب سورسشو پیدا کنید بیارین اینجا

sagggad
یک شنبه 24 آذر 1392, 13:32 عصر
اخه استاد یاد نداده دقیقشو شاید بعد گیر بده
این دقیقه؟

Bitmap b1 = new Bitmap(pictureBox93.BackgroundImage);
Bitmap b2 = new Bitmap(pictureBox48.BackgroundImage);
if (b1.GetPixel(20, 20) == b2.GetPixel(20,20))
MessageBox.Show("The First Pixel is Similar");

برا من جواب داد کارم حل شد

این دستور فقط یک سری پیکسل ها رو مقایسه میکنه.نه کل تصویر رو.برای مقایسه ی کل تصویر باید چه کار کرد پس؟؟

habibb
یک شنبه 24 آذر 1392, 13:33 عصر
اخه استاد یاد نداده دقیقشو شاید بعد گیر بده
این دقیقه؟

Bitmap b1 = new Bitmap(pictureBox93.BackgroundImage);
Bitmap b2 = new Bitmap(pictureBox48.BackgroundImage);
if (b1.GetPixel(20, 20) == b2.GetPixel(20,20))
MessageBox.Show("The First Pixel is Similar");

برا من جواب داد کارم حل شد

می تونید برای اینکه سرعت بالاتر بره یک پیکسل هر جای تصویر ها رو با هم
و برای بالا بردن دقت چند تا پیکسل در چند جای مختلف
که نخوای حلقه For بزنی و از چند تایی If استفاده کنی

FATEMEH@
یک شنبه 24 آذر 1392, 13:35 عصر
دقیق تر منظورتونو بگید فکر کنم چیزی که تو فکر شما هست با چیزی که تو فکر من هست فرق داره. و برای شما راه کار ساده تری داره.
اگه شما تصویر هاتون مشخصه و اسم و ادرس دارید که میتونید مقایسه کنید.( با یه شرط ساده)
اما اگر مقایسه تصویر دارید راهی به جز مقایسه پیکسل به پیکسل نیست.
اگر مشکلتون با picturebux هست ( مثل من) یه راه به ذهنم رسید اونم اینه که عکس ها رو سیو کنیم و بعد با فراخوانی بریزیمش تو ارایه و بایت به بایت مقایسه کنیم.
بازی فکر بکر رو دیدید؟
من برا اون میخام
8تا عکس د ارم
که 4تاش بطور تصادفی دور از چشم کاربر چیده میشند 1 جا
و در معرض دید کاربر هم اون 8 تا عکس هست
که باید بیاد اونا رو بذاره تو 4 تا پیکچر باگس(حدس بزنه رنگا که من چیدم چیه)
بعد من عکسا که اون چیده رو با عکسا که بصورت رندوم از بین اون 8 تا عکس چیده شدن مقایسه میکنم
باید 4 تاش مثله همونا باشه(4تاشو درست حدس زده باشه تا برنده بشه)

FATEMEH@
یک شنبه 24 آذر 1392, 13:36 عصر
این دستور فقط یک سری پیکسل ها رو مقایسه میکنه.نه کل تصویر رو.برای مقایسه ی کل تصویر باید چه کار کرد پس؟؟
خب برا من که کل پیکسل هام توهرتصویر متفاوته خوبه
چون هر تصویرم 1 رنگه دیگه

FATEMEH@
یک شنبه 24 آذر 1392, 13:36 عصر
می تونید برای اینکه سرعت بالاتر بره یک پیکسل هر جای تصویر ها رو با هم
و برای بالا بردن دقت چند تا پیکسل در چند جای مختلف
که نخوای حلقه For بزنی و از چند تایی If استفاده کنی
همینکارومیکنم"یک پیکسل هر جای تصویر ها رو با هم "
چون تصاویرم رنگه و نیاز به مقایسه دقیق نداره

sagggad
یک شنبه 24 آذر 1392, 13:37 عصر
آره برا شما میشه،اما در کل فکرنکنم روش ایده آلی باشه

habibb
یک شنبه 24 آذر 1392, 13:39 عصر
دقیق تر منظورتونو بگید فکر کنم چیزی که تو فکر شما هست با چیزی که تو فکر من هست فرق داره. و برای شما راه کار ساده تری داره.
اگه شما تصویر هاتون مشخصه و اسم و ادرس دارید که میتونید مقایسه کنید.( با یه شرط ساده)
اما اگر مقایسه تصویر دارید راهی به جز مقایسه پیکسل به پیکسل نیست.
اگر مشکلتون با picturebux هست ( مثل من) یه راه به ذهنم رسید ماونم اینه که عکس ها رو سیو کنیم و بعد با فراخوانی بریزیش تو ارایه و بایت به بایت مقایسه کنیم.
با سورس کد توضیح مراحلتونو بدین چطور سیو می کنید و چطور در آرایه میریزیدش و چطور بایت به بایت مقایسه می کنید

FATEMEH@
یک شنبه 24 آذر 1392, 13:47 عصر
آره برا شما میشه،اما در کل فکرنکنم روش ایده آلی باشه
توخود انجمن پیداش کردم

فقط باید 1 فکری به حالش بکنم و گرنه باید خیلی کد بنویسم

sagggad
یک شنبه 24 آذر 1392, 13:52 عصر
حالا اون پیکچرباکس های مخفی کجای برنامه اند؟؟

habibb
یک شنبه 24 آذر 1392, 13:52 عصر
همون لینکه؟ من خیلی نمیخام دقیقا باشه
نمیشه با اسم چک کرد؟

اینم میشه اگر اسم ها عینه هم نباشه

FATEMEH@
یک شنبه 24 آذر 1392, 13:53 عصر
اینم میشه اگر اسم ها عینه هم نباشه
نه نیست
وای میشه بگید چجوری؟:متفکر::گیج: