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

نام تاپیک: کوچک کردن سایز عکس بدون تغییر کیفیت

  1. #1
    کاربر دائمی آواتار asefy2008
    تاریخ عضویت
    مرداد 1387
    محل زندگی
    تهران
    سن
    36
    پست
    729

    کوچک کردن سایز عکس بدون تغییر کیفیت

    سلام دوستان
    فکر کنم عنوان کاملا گویاست می خوام یه عکس رو کوچک کنم با تبدیل wavelet چطور باید این کار رو انجام بدم ؟(البته چون داره عکس کوچک میشه کیفیت تغییر نمیکنه)
    در صورت امکان با کد راهنمایی کنید.

  2. #2
    کاربر دائمی آواتار AliRezaPro
    تاریخ عضویت
    شهریور 1386
    محل زندگی
    PE Header
    پست
    1,054

    نقل قول: کوچک کردن سایز عکس بدون تغییر کیفیت

    عکس وقتی کوچیک میشه ، کیفیت اون بهتر میشود
    public Bitmap ResizeBitmap( Bitmap b, int nWidth, int nHeight )
    {
    Bitmap result = new Bitmap( nWidth, nHeight );
    using( Graphics g = Graphics.FromImage( (Image) result ) )
    g.DrawImage( b, 0, 0, nWidth, nHeight );
    return result;
    }

  3. #3
    کاربر دائمی آواتار asefy2008
    تاریخ عضویت
    مرداد 1387
    محل زندگی
    تهران
    سن
    36
    پست
    729

    نقل قول: کوچک کردن سایز عکس بدون تغییر کیفیت

    نقل قول نوشته شده توسط man7tomani مشاهده تاپیک
    عکس وقتی کوچیک میشه ، کیفیت اون بهتر میشود
    public Bitmap ResizeBitmap( Bitmap b, int nWidth, int nHeight )
    {
    Bitmap result = new Bitmap( nWidth, nHeight );
    using( Graphics g = Graphics.FromImage( (Image) result ) )
    g.DrawImage( b, 0, 0, nWidth, nHeight );
    return result;
    }
    ممنون دوست عزيز از راهنمايتون اما اين كد يك برش از تصوير اصلي رو ميده ولي من مي خوام تصويرم با حفظ جزئيات كوچك بشه. در ضمن اين جواب با تبديل موجك نيست من مي خوام عكسم فشرده سازي بشه با تبديل موجك.

  4. #4
    کاربر دائمی آواتار AliRezaPro
    تاریخ عضویت
    شهریور 1386
    محل زندگی
    PE Header
    پست
    1,054

    نقل قول: کوچک کردن سایز عکس بدون تغییر کیفیت

    ممنون دوست عزيز از راهنمايتون اما اين كد يك برش از تصوير اصلي رو ميده ولي من مي خوام تصويرم با حفظ جزئيات كوچك بشه. در ضمن اين جواب با تبديل موجك نيست من مي خوام عكسم فشرده سازي بشه با تبديل موجك.
    سلام
    تابع بدون مشکل عمل ریسایز رو روی کل عکس انجام میده و مشکلی نداره.
    شاید من بد متوجه شدم.شما میخواهید عکس در همان سایز (اندازه) باشه ولی حجم اون رو کاهش دهید (یعنی می خواهید کامپرس کنید)بدون افت کیفیت؟یا همان ریسایز در رزولیشن بدون افت کیفیت؟

  5. #5
    کاربر تازه وارد آواتار Marzieh_A
    تاریخ عضویت
    اردیبهشت 1386
    محل زندگی
    خونمون
    پست
    87

    نقل قول: کوچک کردن سایز عکس بدون تغییر کیفیت

    این کد رو امتحان کنید


    publicImage resizeImage(Image imgToResize, Size size)
    {
    int sourceWidth = imgToResize.Width;
    int sourceHeight = imgToResize.Height;
    float nPercent = 0;
    float nPercentW = 0;
    float nPercentH = 0;
    nPercentW = ((
    float)size.Width / (float)sourceWidth);
    nPercentH = ((
    float)size.Height / (float)sourceHeight);
    if (nPercentH < nPercentW)
    nPercent = nPercentH;
    else
    nPercent = nPercentW;
    int destWidth = (int)(sourceWidth * nPercent);
    int destHeight = (int)(sourceHeight * nPercent);
    Bitmap b = newBitmap(destWidth, destHeight);
    Graphics g = Graphics.FromImage((Image)b);
    g.InterpolationMode =
    InterpolationMode.HighQualityBicubic;
    g.DrawImage(imgToResize, 0, 0, destWidth, destHeight);
    g.Dispose();
    return (Image)b;
    }

  6. #6
    کاربر دائمی آواتار behnam25214
    تاریخ عضویت
    اردیبهشت 1388
    محل زندگی
    @-<-<
    پست
    338

    نقل قول: کوچک کردن سایز عکس بدون تغییر کیفیت

    دوست عزیز
    در هر صورت اگه عکس رو کوچک یا بزرگ کنید کیفیت عکس پائین می آید.

  7. #7
    کاربر دائمی آواتار asefy2008
    تاریخ عضویت
    مرداد 1387
    محل زندگی
    تهران
    سن
    36
    پست
    729

    نقل قول: کوچک کردن سایز عکس بدون تغییر کیفیت

    نقل قول نوشته شده توسط man7tomani مشاهده تاپیک
    سلام
    تابع بدون مشکل عمل ریسایز رو روی کل عکس انجام میده و مشکلی نداره.
    شاید من بد متوجه شدم.شما میخواهید عکس در همان سایز (اندازه) باشه ولی حجم اون رو کاهش دهید (یعنی می خواهید کامپرس کنید)بدون افت کیفیت؟یا همان ریسایز در رزولیشن بدون افت کیفیت؟
    نه من نمی خوام حجم رو کاهش بدم. یکم بیشتر توضیح میدم نگاه کن من یک عکس با سایز 100 در 100 پیکسل دارم می خوام این عکس رو به یک ماتریس 10 در 10 پیکسلی تبدیل کنم بدون تغییر در جزئیات یعنی نمی خوام جزئیات از تصویر حذف بشه

    Marzieh_Aنقل قول: کوچک کردن سایز عکس بدون تغییر کیفیت
    این کد رو امتحان کنید

    کد:
    publicImage resizeImage(Image imgToResize, Size size){int sourceWidth = imgToResize.Width;int sourceHeight = imgToResize.Height;float nPercent = 0;float nPercentW = 0;float nPercentH = 0;nPercentW = ((float)size.Width / (float)sourceWidth);nPercentH = ((float)size.Height / (float)sourceHeight);if (nPercentH < nPercentW)nPercent = nPercentH;elsenPercent = nPercentW;int destWidth = (int)(sourceWidth * nPercent);int destHeight = (int)(sourceHeight * nPercent);Bitmap b = newBitmap(destWidth, destHeight);Graphics g = Graphics.FromImage((Image)b);g.InterpolationMode = InterpolationMode.HighQualityBicubic;g.DrawImage(imgToResize, 0, 0, destWidth, destHeight);g.Dispose();return (Image)b;}
    میشه بگی این کد با کد دوستمون چه تفاوتی داره؟

    behnam25214نقل قول: کوچک کردن سایز عکس بدون تغییر کیفیت
    دوست عزیز
    در هر صورت اگه عکس رو کوچک یا بزرگ کنید کیفیت عکس پائین می آید.
    با این راه که من می خوام انجام بدم اگر تصویر کوچک بشه کیفیت بالا میره و همچنان جزئیات در تصویر وجود دارند.

  8. #8
    کاربر تازه وارد آواتار Marzieh_A
    تاریخ عضویت
    اردیبهشت 1386
    محل زندگی
    خونمون
    پست
    87

    نقل قول: کوچک کردن سایز عکس بدون تغییر کیفیت

    نقل قول نوشته شده توسط asefy2008 مشاهده تاپیک
    میشه بگی این کد با کد دوستمون چه تفاوتی داره؟

    این دو تا کد با هم فرق دارن.
    کدی که جناب man7tomani گذاشتن، دقیقا عرض و طول عکس رو برابر با مقدار داده شده می کته. یعنی کاری به ساختار کلی و شکل اصلی عکس نداره.
    اما کدی که من گذاشتم عکس رو با در نظر گرفتن گزینۀ Keep aspect ratio که اکثر برنامه های ویرایش عکس دارند، resize می کنه.
    البته بهتره بگم که عمل این خاصیت در resize کردن عکس اینه که عکس ورودی رو با در نظر گرفتن شکل کلی نسبت به size داده شده resize می کنه.
    یعنی نسبت ابعاد به هم بعد قبل و بعد از resize شدن عکس مورد نظر، یکی هست.

  9. #9
    کاربر دائمی آواتار AliRezaPro
    تاریخ عضویت
    شهریور 1386
    محل زندگی
    PE Header
    پست
    1,054

    نقل قول: کوچک کردن سایز عکس بدون تغییر کیفیت

    این دو تا کد با هم فرق دارن.
    کدی که جناب man7tomani گذاشتن، دقیقا عرض و طول عکس رو برابر با مقدار داده شده می کته. یعنی کاری به ساختار کلی و شکل اصلی عکس نداره.
    اما کدی که من گذاشتم عکس رو با در نظر گرفتن گزینۀ Keep aspect ratio که اکثر برنامه های ویرایش عکس دارند، resize می کنه.
    البته بهتره بگم که عمل این خاصیت در resize کردن عکس اینه که عکس ورودی رو با در نظر گرفتن شکل کلی نسبت به size داده شده resize می کنه.
    یعنی نسبت ابعاد به هم بعد قبل و بعد از resize شدن عکس مورد نظر، یکی هست.
    سلام
    من 1 عکس رو با هر دو تابع خروجی گرفتم اما خروجی ها کاملا مثل هم بود و هیچ تفاوتی نداشتند.

  10. #10
    کاربر تازه وارد آواتار Marzieh_A
    تاریخ عضویت
    اردیبهشت 1386
    محل زندگی
    خونمون
    پست
    87

    نقل قول: کوچک کردن سایز عکس بدون تغییر کیفیت

    نقل قول نوشته شده توسط man7tomani مشاهده تاپیک
    سلام
    من 1 عکس رو با هر دو تابع خروجی گرفتم اما خروجی ها کاملا مثل هم بود و هیچ تفاوتی نداشتند.
    جالبه ...
    لابد عکس و سایزی که دادید در هر دو تابع با وجود یا بدون وجود خاصیت Keep aspect ratio خروجی یکسان میده!
    اما نتایجی که من گرفتم رو ببینید.
    عکس اول، عکس اصلی هست.
    عکس دوم با تابعی که شما نوشتید عکس رو به سایز با عرض 200 و طول 250 تبدیل می کنه.
    عکس سوم با تابعی که من نوشتم و با سایز ورودی عرض 200 و طول 250، عکس رو resize می کنه.
    به نظرتون هیچ فرقی تو نتایج نیست؟!!!




    عکس های ضمیمه عکس های ضمیمه
    آخرین ویرایش به وسیله Marzieh_A : پنج شنبه 26 فروردین 1389 در 00:22 صبح

  11. #11
    کاربر دائمی آواتار aminghaderi
    تاریخ عضویت
    بهمن 1387
    محل زندگی
    مشهد
    پست
    1,557

    نقل قول: کوچک کردن سایز عکس بدون تغییر کیفیت

    خوب این کد های که شما ها نوشتید به چه دردی می خوره؟!؟
    من الان می خوام استفاده کنم،،،
    خوب از این توابع چطوری باید استفاده کرد؟؟؟
    اون retern چی رو بر می گردونه؟؟؟
    تصویر Resize شده کجا ذخیره می شه؟؟؟؟
    نیم اسپیس های مرتبط چی هست؟؟؟
    ووو
    برای کد زحمت کشیدید ولی چه فایده که کامل نیست؟!

  12. #12
    کاربر دائمی آواتار asefy2008
    تاریخ عضویت
    مرداد 1387
    محل زندگی
    تهران
    سن
    36
    پست
    729

    نقل قول: کوچک کردن سایز عکس بدون تغییر کیفیت

    خوب این کد های که شما ها نوشتید به چه دردی می خوره؟!؟
    در پردازش تصویر بدرد می خوره. شما فرض کن بخوای یک عکس 200*200 رو پردازش کنی. حالا اگر شما بتونی همین عکس رو در اندازه 50*50 داشته باشی و نتیجه پردازش هم یکی باشه کدوم روش رو انتخاب می کنی ؟

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

    اون retern چی رو بر می گردونه؟؟؟
    عکس با اندازه جدید که شما به تابع میدی

    برای کد زحمت کشیدید ولی چه فایده که کامل نیست؟!
    یعنی چی کامل نیست .خوب resize می کنه دیگه

  13. #13
    کاربر دائمی آواتار cardano7
    تاریخ عضویت
    اردیبهشت 1389
    محل زندگی
    کارتون خواب
    پست
    473

    نقل قول: کوچک کردن سایز عکس بدون تغییر کیفیت

    سلام
    چرا GetThumbnail رو امتحان نمی کنید؟

  14. #14
    کاربر دائمی آواتار asefy2008
    تاریخ عضویت
    مرداد 1387
    محل زندگی
    تهران
    سن
    36
    پست
    729

    نقل قول: کوچک کردن سایز عکس بدون تغییر کیفیت

    نقل قول نوشته شده توسط cardano7 مشاهده تاپیک
    سلام
    چرا GetThumbnail رو امتحان نمی کنید؟
    یکم بیشتر توضیح بدی ممنون میشم.

  15. #15
    کاربر دائمی آواتار cardano7
    تاریخ عضویت
    اردیبهشت 1389
    محل زندگی
    کارتون خواب
    پست
    473

    نقل قول: کوچک کردن سایز عکس بدون تغییر کیفیت

    نقل قول نوشته شده توسط asefy2008 مشاهده تاپیک
    یکم بیشتر توضیح بدی ممنون میشم.
    یک همچین قالبی داره:
                Image img1 = ...;
    img2 = img1.GetThumbnailImage(...);


    بقیه ش رو خودتون سرچ کنید.

  16. #16
    کاربر دائمی آواتار مصطفی ساتکی
    تاریخ عضویت
    اردیبهشت 1386
    محل زندگی
    www.7khatcode.com
    پست
    1,193

    نقل قول: کوچک کردن سایز عکس بدون تغییر کیفیت

    شما می تونی از تبدیل WaveLet هم استفاده کنی که اساس کار Jpeg2000

  17. #17
    کاربر دائمی آواتار cardano7
    تاریخ عضویت
    اردیبهشت 1389
    محل زندگی
    کارتون خواب
    پست
    473

    نقل قول: کوچک کردن سایز عکس بدون تغییر کیفیت

    نقل قول نوشته شده توسط Delphi_CAT مشاهده تاپیک
    شما می تونی از تبدیل WaveLet هم استفاده کنی که اساس کار Jpeg2000
    میشه بیشتر توضیح بدید؟

  18. #18
    کاربر دائمی آواتار asefy2008
    تاریخ عضویت
    مرداد 1387
    محل زندگی
    تهران
    سن
    36
    پست
    729

    نقل قول: کوچک کردن سایز عکس بدون تغییر کیفیت

    شما می تونی از تبدیل WaveLet هم استفاده کنی که اساس کار Jpeg2000
    واقعا از شما ممنونم تو این تاپیک اینقدر گفتم تبدیل wavelet می خوام نه اون چیزی که دوستان قرار دادن زبونم مو در آورد. حالا خواهشا یک توضیح کامل بدید تا علاوه بر من دوستان هم متوجه بشن من دنبال چی بودم.

  19. #19
    کاربر دائمی آواتار مصطفی ساتکی
    تاریخ عضویت
    اردیبهشت 1386
    محل زندگی
    www.7khatcode.com
    پست
    1,193

    نقل قول: کوچک کردن سایز عکس بدون تغییر کیفیت

    اول از همه اینکه با تبدیل Wavelet می تونیم هر دو نوع فشره سازی Lossy و Lossless رو انجام بدیم فرق این دو در اینه که با روش دوم اطلاعات اطلاعات اصلی بدون هیچ کم و کاستی قابل بازیابیه مثل کاری که Zip و Rar دارن انجام می دن و در روش اول این اطلاعات اصلی قابل بازیابی نیست یعنی در انجام عملیات معکوس افت داده داریم مثل jpeg وMpg که هر دو شون با DCT پیاده شده (تبدیل کسینوسی گسسته) و البته wavelet هم بیشتر در حالت Lossy بکار میره مثل Jpeg2000 .
    برخلاف DCT که توابع پایه ایش بر اساس سینوس و کسینوسه Wavelet به این صورت نیست بلکه از موجک های تشکیل شده با نام wavelets که از خاصیت های اصلی شون محدود بودن و فرکانس متغیرشونو .تئوری wavelet در ابتدا با تئوری MultiResolution شروع شد همین چیزی که جناب asefy2008مطرح فرمودن.
    همونطوری که از نام MultiResolution مشخص یعنی آنالیز و نمایش تصویر در Resolution های مختلف.جناب asefy2008 به نکته خوبی اشاره کردن که میخام در ابعاد مختلف پردازش کنم تا عمل پردازش با سرعت بالاتری صورت بگیره یکی از دلایل موردیش می تونه این باشه مثلاً کار کردن با Resolution مختلف مزیت های مهم تری هم می تونه داشته باشه . ممکن یه آبجکت در یک Resolution قابل تشخیص نباشه و با UpSampling(افزایش Resolution) کردن همون تصویر اون آبجکت قابل شناسایی باشه.اگر گذرتون به Ocr ها افتاده باشه اکثرشون برای بدست آوردن یک جواب مطلوب کارشونو در Resolution 300 انجام می دن .به فرض مثال شما تصویری رو با Resolution 100 به ocr بدید ممکن نوشته هایی که با فونت کوچکتر در جریان ف ی ل ت ر شدن بار اطلاعاتی خودشون از دست بدن و زمانیکه برای شبکه عصبی فرستاده میشه جواب مطلوب دریافت نکنید پس تو این فرایند MultiResolution یه فاز حیایتی محسوب میشه . البته قابل ذکر که همیشه اینطوری نیست که Resolution رو افزایش بدیم گاهی اوقات نیاز DownSampling هم انجام بدیم یعنی Resolution به حدی زیاده که Reco Engine ما کارایی شو از دست داده.
    از جمله کاربردهایی رایج wavelet تو شاخه پردازش تصویر میشه به Edge Detection (تشخیص لبه) ,Noise Reduction (کاهش نویز)،Steganography (مخفی سازی تصاویر)،Layout Recognition(تشخیص طرح بندی صفحه) و فشرده سازی نام برد.
    برای یه تصور شماتیک از MultiResolution یه هرم رو در نظر بگیرید نوک هرم دارای تصویر با پایین ترین کیفیته و در مبداً خودش دارای تصویر با بالاترین کیفیته هر چه این هرم رو به سمت پایین بیاد Resolution تصویر بالا می ره. تصویر مبداً ابعادش به صورت J^2 که در اینجا J معادل با Log2 N .برای رفتن به بالای هرم J رو کاهش بدید .

  20. #20
    کاربر دائمی آواتار cardano7
    تاریخ عضویت
    اردیبهشت 1389
    محل زندگی
    کارتون خواب
    پست
    473

    نقل قول: کوچک کردن سایز عکس بدون تغییر کیفیت

    میشه NameSpace ها و class های و متدهای مربوط به این کار رو هم معرفی کنید؟
    چون تو سرچ کردن همیشه اصل مطلب بالا نمیاد و کلی وقت باید در لا به لای مسائل فرعی گشت!

  21. #21
    کاربر دائمی آواتار aminghaderi
    تاریخ عضویت
    بهمن 1387
    محل زندگی
    مشهد
    پست
    1,557

    نقل قول: کوچک کردن سایز عکس بدون تغییر کیفیت

    یعنی چی کامل نیست .خوب resize می کنه دیگه
    خسته نباشید!!!
    خوب برادر این که از واضحاته؟!
    منظورم اینه که یک نمونه کد کامل بزار؟!
    البته من شخصا کارم راه افتاده ، واسه دوستان گفته بودم.
    مثل این لینک: (کامل و مرتب ، قابل استفاده)
    https://barnamenevis.org/showthread.php?t=228008

  22. #22
    کاربر دائمی آواتار aminghaderi
    تاریخ عضویت
    بهمن 1387
    محل زندگی
    مشهد
    پست
    1,557

    نقل قول: کوچک کردن سایز عکس بدون تغییر کیفیت

    میشه NameSpace ها و class های و متدهای مربوط به این کار رو هم معرفی کنید؟
    چون تو سرچ کردن همیشه اصل مطلب بالا نمیاد و کلی وقت باید در لا به لای مسائل فرعی گشت!
    این لینک رو ببینید ، شاید مشکلتون حل شه :
    https://barnamenevis.org/showthread.php?t=228008

برچسب های این تاپیک

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

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