نمایش نتایج 1 تا 5 از 5

نام تاپیک: راه حلی برای لود بهتر و سریع تر تصاویر وجود دارد؟

  1. #1
    کاربر دائمی آواتار رامین مرادی
    تاریخ عضویت
    اردیبهشت 1389
    محل زندگی
    آذربایجان
    پست
    1,961

    Question راه حلی برای لود بهتر و سریع تر تصاویر وجود دارد؟

    سلام دوستان وقت بخیر.
    من نیاز دارم تصویر کوچکی از یه سری تصاویر ذخیره شده تو مسیر شبکه رو نشون بدوم. اندازه تصویری که قراره نشون بدم 118*118 هست.
    ولی خب خودتون بهتر میدونید تو سی شارپ بخواید تصاویر رو نشون بدید با افت شدید سرعت مواجه میشید. مخصوصا تعداد تصاویر اگه بیشتر از 10 تا باشه. حافظه رو هم به شدت پر میکنه.
    من با کد زیر هم تست کردم ول باز همون آش و همون کاسه.(کنترل تصاویر به تعداد تصاویر موجود در حافظه در حین اجرا ایجاد میشه.توسط یه حلقه)

    Image image = Image.FromFile(AppSeetingClass.GetAppDir() + dataTable.Rows[i]["FileName"].ToString());
    Image thumb = image.GetThumbnailImage(120, 120, () => false, IntPtr.Zero);
    pictureBox.Image = thumb;

    میخواستم بدونم کتابخانه ای چیزی برای جایگزینی هست؟ فقط میخوام یه نمونه کوچیک از تصویر ایجاد بشه.
    آخرین ویرایش به وسیله ژیار رحیمی : شنبه 19 بهمن 1398 در 13:23 عصر

  2. #2

    نقل قول: راه حلی برای لود بهتر و سریع تر تصاویر وجود دارد؟

    نقل قول نوشته شده توسط رامین مرادی مشاهده تاپیک
    سلام دوستان وقت بخیر.
    من نیاز دارم تصویر کوچکی از یه سری تصاویر ذخیره شده تو مسیر شبکه رو نشون بدوم. اندازه تصویری که قراره نشون بدم 118*118 هست.
    ولی خب خودتون بهتر میدونید تو سی شارپ بخواید تصاویر رو نشون بدید با افت شدید سرعت مواجه میشید. مخصوصا تعداد تصاویر اگه بیشتر از 10 تا باشه. حافظه رو هم به شدت پر میکنه.
    من با کد زیر هم تست کردم ول باز همون آش و همون کاسه.(کنترل تصاویر به تعداد تصاویر موجود در حافظه در حین اجرا ایجاد میشه.توسط یه حلقه)

    Image image = Image.FromFile(AppSeetingClass.GetAppDir() + dataTable.Rows[i]["FileName"].ToString());
    Image thumb = image.GetThumbnailImage(120, 120, () => false, IntPtr.Zero);
    pictureBox.Image = thumb;

    میخواستم بدونم کتابخانه ای چیزی برای جایگزینی هست؟ فقط میخوام یه نمونه کوچیک از تصویر ایجاد بشه.
    پروژه ای که در تاپیک عدم نمایش عکس ها قرار داده بودم رو که لابد دیدید.

    کلا برای افزایش سرعت در پردازش تصویر می توانید از Magick.NET-Q8 یا ImageProcessor استفاده کنید ولی برای مواردی که تصویر بزرگی ایجاد می کنید مزیت ایجاد می کنند، نه تصاویر کوچک.
    اگه سرعتشون رو با Image.GetThumbnailImage مقایسه کنید، Image.GetThumbnailImage سریعتر از هر دو شون عمل می کنه چون سربار تبدیل به Image و Bitmap ای که اونها دارند رو نداره.

  3. #3

    نقل قول: راه حلی برای لود بهتر و سریع تر تصاویر وجود دارد؟

    نقل قول نوشته شده توسط رامین مرادی مشاهده تاپیک
    سلام دوستان وقت بخیر.
    من نیاز دارم تصویر کوچکی از یه سری تصاویر ذخیره شده تو مسیر شبکه رو نشون بدوم. اندازه تصویری که قراره نشون بدم 118*118 هست.
    ولی خب خودتون بهتر میدونید تو سی شارپ بخواید تصاویر رو نشون بدید با افت شدید سرعت مواجه میشید. مخصوصا تعداد تصاویر اگه بیشتر از 10 تا باشه. حافظه رو هم به شدت پر میکنه.
    من با کد زیر هم تست کردم ول باز همون آش و همون کاسه.(کنترل تصاویر به تعداد تصاویر موجود در حافظه در حین اجرا ایجاد میشه.توسط یه حلقه)

    Image image = Image.FromFile(AppSeetingClass.GetAppDir() + dataTable.Rows[i]["FileName"].ToString());
    Image thumb = image.GetThumbnailImage(120, 120, () => false, IntPtr.Zero);
    pictureBox.Image = thumb;

    میخواستم بدونم کتابخانه ای چیزی برای جایگزینی هست؟ فقط میخوام یه نمونه کوچیک از تصویر ایجاد بشه.
    اگر این کد روی کلاینت اجرا بشه خب منطقی هست که حافظه و زمان زیادی ببره چون تصویر کامل باید به کلاینت منتقل بشه تا بعد تصویر بندانگشتی ساخته بشه. اگر بتونید تصویر بندانگشتی را روی سرور بسازید و ارسال کنید بهتر میشه یا حتی تصاویر بندنگشتی را روی سرور ذخیره(کش) کنید.
    از صفحه بندی و نمونه کد the king هم برای تعداد زیاد تصاویر میتونید استفاده کنید

  4. #4
    کاربر دائمی آواتار رامین مرادی
    تاریخ عضویت
    اردیبهشت 1389
    محل زندگی
    آذربایجان
    پست
    1,961

    نقل قول: راه حلی برای لود بهتر و سریع تر تصاویر وجود دارد؟

    نقل قول نوشته شده توسط Mahmoud.Afrad مشاهده تاپیک
    اگر این کد روی کلاینت اجرا بشه خب منطقی هست که حافظه و زمان زیادی ببره چون تصویر کامل باید به کلاینت منتقل بشه تا بعد تصویر بندانگشتی ساخته بشه. اگر بتونید تصویر بندانگشتی را روی سرور بسازید و ارسال کنید بهتر میشه یا حتی تصاویر بندنگشتی را روی سرور ذخیره(کش) کنید.
    از صفحه بندی و نمونه کد the king هم برای تعداد زیاد تصاویر میتونید استفاده کنید
    نمونه کد ایشون رو موقع دانلود ویروس میشناسه نتونستم دانلود کنم.
    پس یعنی موقع کپی تصویر تو سرور یه نمونه بند انگشتی هم براش ایجاد کنم تا حداقل برای بهبود این عملیات ازش استفاده کنم؟(حجم هم برام مساله شده و به مرور زمان این حجم زیاد میشه.فعلا حدود 90 گیگ هست.) و برای اینکه همزمان تصاویر زیادی لود نشه از صفحه بندی استفاده کنم و با ترکیب این دوتا بتونم نتیجه مورد قبولتری بگیرم.(خودم این روش رو به بقیه پیشنهاد میدم فقط چون تعداد تصاویر نسبتا کم هستن تو گروه ها برا همین سعی کردم استفاده نکنم )
    فقط یه مسئله من موقع نمایش تصاویر پیکجر باکس رو در زمان اجرا ایجاد میکنم. بهتره به تعداد محدود این کنترل رو روی فرم بزارم یا همون موقع اجرا ایجاد کنم؟ تو روش دوم بحث از بین بردن کلاس های بلا استفاده هم پیش میاد که خب اونم یه کم دردسر میشه.

  5. #5

    نقل قول: راه حلی برای لود بهتر و سریع تر تصاویر وجود دارد؟

    نقل قول نوشته شده توسط رامین مرادی مشاهده تاپیک
    نمونه کد ایشون رو موقع دانلود ویروس میشناسه نتونستم دانلود کنم.
    پس یعنی موقع کپی تصویر تو سرور یه نمونه بند انگشتی هم براش ایجاد کنم تا حداقل برای بهبود این عملیات ازش استفاده کنم؟(حجم هم برام مساله شده و به مرور زمان این حجم زیاد میشه.فعلا حدود 90 گیگ هست.) و برای اینکه همزمان تصاویر زیادی لود نشه از صفحه بندی استفاده کنم و با ترکیب این دوتا بتونم نتیجه مورد قبولتری بگیرم.(خودم این روش رو به بقیه پیشنهاد میدم فقط چون تعداد تصاویر نسبتا کم هستن تو گروه ها برا همین سعی کردم استفاده نکنم )
    فقط یه مسئله من موقع نمایش تصاویر پیکجر باکس رو در زمان اجرا ایجاد میکنم. بهتره به تعداد محدود این کنترل رو روی فرم بزارم یا همون موقع اجرا ایجاد کنم؟ تو روش دوم بحث از بین بردن کلاس های بلا استفاده هم پیش میاد که خب اونم یه کم دردسر میشه.
    خیلی تفاوتی نداره که در زمان اجرا PictureBox میسازید یا نه، مهم اینه که وقتی دیگه لازمشون ندارید و میخواهید حذف شون کنید Dispose کردن یادتون نره. اگر Dispose شدن انجام بشه در زمان اجرا هم بسازید مشکلی پیش نمیاد.

تاپیک های مشابه

  1. پاسخ: 6
    آخرین پست: سه شنبه 24 مرداد 1391, 14:58 عصر
  2. سوال : پردازش سریع تصاویر
    نوشته شده توسط gbg در بخش مباحث عمومی دلفی و پاسکال
    پاسخ: 10
    آخرین پست: دوشنبه 10 اسفند 1388, 18:40 عصر
  3. نمایش سریع تصاویر در #C
    نوشته شده توسط Seyedalavifar در بخش C#‎‎
    پاسخ: 1
    آخرین پست: شنبه 18 آذر 1385, 14:56 عصر
  4. حرکت سریع تصاویر
    نوشته شده توسط SReza1 در بخش برنامه نویسی در Delphi
    پاسخ: 3
    آخرین پست: جمعه 28 آذر 1382, 08:55 صبح

قوانین ایجاد تاپیک در تالار

  • شما نمی توانید تاپیک جدید ایجاد کنید
  • شما نمی توانید به تاپیک ها پاسخ دهید
  • شما نمی توانید ضمیمه ارسال کنید
  • شما نمی توانید پاسخ هایتان را ویرایش کنید
  •