PDA

View Full Version : سورس یکی از فرمتهای تصویری



پرواز
یک شنبه 18 آبان 1393, 16:36 عصر
سلام
من دنبال یک سورس هستم که سورس کامل یکی از فرمتهای غیر اتلافی تصویری مثل bitmap یا gif رو بتونم باهاش بنویسم. در واقع میخوام بتونم اطلاعات هدر و بقیه اطلاعات یک عکس رو دستکاری کنم یا حتی یه فرمت جدید بنویسم. کسی هست که بدونه سورس فرمتهای تصویری رو از کجا میشه پیدا کرد؟

juza66
یک شنبه 18 آبان 1393, 17:56 عصر
سلام

برای نوشتن یک فرمت جدید باید الگوریتم endoer و decoder بنویسید

این سایت سورس encoder و decoder فرمت JPG رو با دات نت گذاشته
http://www.xbdev.net/image_formats/jpeg/jpeg_decoder_source/


تازه شما هم به فرض مثال تونستید یک فرمت جدید بنویسید باید به تأیید شرکت مایکروسافت برسونید تازه اگر باگ نداشته باشه یا کدهاش کپی نباشن ...

یا خودتون دستی فرمت رو برای ویندوز تعریف کنید و یک برنامه برای decode کردن و نمایشش بنویسید


اگر اطلاعاتم ناقص یا صحت نداشت شرمنده منم خیلی از این کارها رو انجام دادم البته با خسرو مترجمی مجری شبکه قدیمی itn

Amir4317
یک شنبه 18 آبان 1393, 17:58 عصر
اینجور فرمت ها با این که رایج هستند معمولاً توسط کمپانی های بزرگ خریداری شدند و در محصول نهایی بکار بسته میشن.
برای اپتیمایز عکس خودم دنبالش بودم در منابع اپن سورس و لینوکس چیزی ندیدم تا حالا
بنظرم می‌تونید از گروه‌های سازنده‌شون (JPEGroup) لیسانسش رو خریداری کنید. :متفکر:

Amir4317
یک شنبه 18 آبان 1393, 18:04 عصر
پیشنهاد میکنم به جای دستکاری سورس دیگری و خلق(!) یک فرمت جدید ناقص الخلقه از همین روش آقا جوزا استفاده کنید، امنیت بهینه شده عالی و راحت و سریع، مختص برنامه خودتون
(بیشتر برای پشتییبانی بانک داده ها و ... استفاده میشه)

rahnema1
یک شنبه 18 آبان 1393, 18:14 عصر
اکثر این فرمتها ویژگیهاشون مشخصه و متن باز و کاملا قابل دسترسی هستند مثل کتابخانه های libpng یا libtiff که به زبان c هستند
مثلا مشخصات فرمت bitmap در سایت ویکی پدیا توضیح داده
http://en.wikipedia.org/wiki/BMP_file_format
خود کتابخانه gdi مایکروسافت امکان کار با bitmap و تغییر خصوصیات هدر و ... اون را میده
http://msdn.microsoft.com/en-us/library/dd183377(v=vs.85).aspx

پرواز
یک شنبه 18 آبان 1393, 23:08 عصر
با تشکر از همه دوستانی که کمک کردند، ببینید اینکه فرمتی که ساخته میشه چطور خونده میشه یه بحث جداست. من اگر می خوام فرمت بسازم چون استفاده های دیگه ای از تصویر میخوام بکنم و خیلی هم برام مهم نیست که ویندوز بخوندش. امیر گفتن بهتره که خلق نکنیم و از فرمتهای موجود استفاده کنیم، خب کاملا موافقم. من دنبال یه سورس سی شارپ هستم که یکی از فرمتها رو دقیقا از سیر تا پیاز بشه توش پیدا کرد و من امکان اینو داشته باشم که دیتای هدر رو به نحوی که خودم دوست دارم بسازم و تغییر بدم، قصد دارم یه چیزایی به هدر فایل اضافه کنم و یه چیزایی حذف کنم. شاید بخوام حجم هدر رو افزایش بدم و یک سری اطلاعات جانبی که بطور استاندارد توی عکسهای دیگه وجود نداره رو اضافه کنم تا عکس من بتونه اطلاعات بیشتری با خودش حمل کنه. و ...

حالا اگر کسی بتونه یک سورس کامل و داکیومنت شده سی شارپ معرفی کنه که همه نیازهای من رو برآورده کنه خیلی عالی میشه.

elec60
دوشنبه 19 آبان 1393, 10:43 صبح
براي نوشتن الگوريتمهاي فشرده سازي و كدينگ تصاوير نياز به دانش پردازش تصوير دارين و برنامه نويس حرفه اي بودن به تنهايي كارساز نيست. بايد با مفاهيم فوريه و CosinTransform و ويولت و Pattern Recognition و ... اشنايي داشته باشين. اصلا كار ساده اي نيست و كدينگ درست و حسابي نوشتن كار يه شخص نيست.

Amir4317
دوشنبه 19 آبان 1393, 18:26 عصر
Zip
خدایگان فرمت هاست!
البته از نظر من./:لبخند:


دوران دبیرستان با کابدشکافی اکثر پسوند‌های شناخته شده و نشده به این نتیجه رسیدم که زیپ یک بانک فایل عالی هست.
پسوندهای شناخنه شده‌ی آفیس مثل ورد و پاورپوینت و حتی XPS ها و ... همه همه از زیرمجموعه زیپ‌ها هستند.
بسیاری از کمپانی‌های بازی سازی موسی، فیلم و .. حتی تکسچر بازی ها رو درون شبه زیپ قرار میدن و با موتور خودشون اونا رو بازخوانی میکنن.
که البته منم دنبال همونا بودم :کف:

توی یه پروژه XPS ها رو موشکافی کردم، حتی پیشنمایش بندانگشتی فایل (Thumb) درون خودش بود
که به مزاق رییس خوش اومد (اصن یه وضی:تشویق:)
125498
:اشتباه:
__________________________________________________ __________________________________________________ __________________



پیشنهاد من هم همینه
همه‌ی اطلاعاتت رو درون فایل شبه‌زیپ دلخواهت بریز و با نرم افزار خودت استخراج کن. :چشمک:

فایل زیپ شامل زیرفایل‌های:
01. فایل تصویر با کیفیت دلخواهت
02. فایل توضیحات تصویر
03. فایل Thumbnail
04. و غیره...

موفق باشی :شیطان: :چشمک:

rahnema1
دوشنبه 19 آبان 1393, 18:39 عصر
این دو تا لینک را بررسی کنید
https://imagetools.codeplex.com

http://psdplugin.codeplex.com

hsgpro
دوشنبه 19 آبان 1393, 20:00 عصر
سلام

منم خیلی دنبال سورس JPEG بودم اما هر چی گشتم نبود نگرد نیست.
به قول Amir4317 (http://barnamenevis.org/member.php?227980-Amir4317) احتمالاً لایسنس داره آخه تو سایت StackOverFlow.com هم یکی سوال پرسیده بود که چطوری سورس کد کامل JPEG رو بدست بیاره مسخرش کرده بودن گفتن سورس کد کامل نحوه Encode و Decode الگوریتم JPEG همینطوری نیست که هر کسی بهش دست پیدا کنه بعد یادمه یه سایت معرفی کرده بود که اون جا برید بخرید.

تازه فکر نکنم هم با خرید سورس کد کامل JPEG رو بهتون بدن چون اگه میدادن پس چرا الان دزدی (Null) شدش تو نت نیست؟ آخه بعضی از خود خارجی ها یه چیزی رو میخرن و رایگان میذارن تو سایتشون مگه ممکنه تا به حال یکی از این Null کننده ها JPEG رو نخریده باشه؟ من میگم با خرید ازش هم سورس کد کامل نحوه Encode و Decode رو بهمون نمیدن.

من اگه داشتمش تو فکر یه پروژه خیلی خیلی بزرگ بودم که دنیا رو می ترکوند منم مثل شما می خواستم یه تغییراتی تو کد هاش قبل از ذخیره سازی بدم اما هر چی گشتم به جایی نرسیدم.

hsgpro
دوشنبه 19 آبان 1393, 20:09 عصر
Zip
خدایگان فرمت هاست!
البته از نظر من./:لبخند:


دوران دبیرستان با کابدشکافی اکثر پسوند‌های شناخته شده و نشده به این نتیجه رسیدم که زیپ یک بانک فایل عالی هست.
پسوندهای شناخنه شده‌ی آفیس مثل ورد و پاورپوینت و حتی XPS ها و ... همه همه از زیرمجموعه زیپ‌ها هستند.
بسیاری از کمپانی‌های بازی سازی موسی، فیلم و .. حتی تکسچر بازی ها رو درون شبه زیپ قرار میدن و با موتور خودشون اونا رو بازخوانی میکنن.
که البته منم دنبال همونا بودم :کف:

توی یه پروژه XPS ها رو موشکافی کردم، حتی پیشنمایش بندانگشتی فایل (Thumb) درون خودش بود
که به مزاق رییس خوش اومد (اصن یه وضی:تشویق:)
125498
:اشتباه:
__________________________________________________ __________________________________________________ __________________



پیشنهاد من هم همینه
همه‌ی اطلاعاتت رو درون فایل شبه‌زیپ دلخواهت بریز و با نرم افزار خودت استخراج کن. :چشمک:

فایل زیپ شامل زیرفایل‌های:
01. فایل تصویر با کیفیت دلخواهت
02. فایل توضیحات تصویر
03. فایل Thumbnail
04. و غیره...

موفق باشی :شیطان: :چشمک:



خوبه ها ولی به نظر من برای استفاده درون نرم افزاری ذخیره تنظیمات و حتی فایل ها در فایل هایی که میشه مستقیم با زبان برنامه نویسی بدون Extract چیزی خوند بهتره.
مثلاً تو سی شارپ می تونید فایل ها رو با کلاس Resource در یک فایل جدا با فرمتی دلخواه ذخیره کنید برای اینکه کسی هم نتونه Resource تولید شده شما رو بخونه یا فرمتش رو بفهمه می تونید خیلی ساده با روشی دلخواه بایت هاش رو هنگام لود و ذخیره جا به جا کنید مثلاً من خودم توی یه برنامه بایت ها رو برعکس (Invert) میکردم یعنی بایت های آخر رو میاوردم اول بعد موقع لود دوباره برعکس میکردم:لبخند: البته برای امنیت بیشتر بهتره از رمز نگاری های کلاس System.Security.Cryptography استفاده کنید که امنیتشون خوبه فقط یکم حجم فایل رو بالا میبرن.

اما خیلی باحال میشه فکر کنید 10 تا فایل در یه فایل Resource که با کلاس Resource درست شده هستن بعد این فایل بایت هاش به دلخواه خودمون ذخیره میشه و حتی می تونیم یه header دلخواه هم به بایت هاش ارسال کنیم و به عنوان فرمتی جدید همراه نرم افزارمون ارائه کنیم:چشمک:

rahnema1
دوشنبه 19 آبان 1393, 21:10 عصر
سلام

منم خیلی دنبال سورس JPEG بودم اما هر چی گشتم نبود نگرد نیست.
من اگه داشتمش تو فکر یه پروژه خیلی خیلی بزرگ بودم که دنیا رو می ترکوند منم مثل شما می خواستم یه تغییراتی تو کد هاش قبل از ذخیره سازی بدم اما هر چی گشتم به جایی نرسیدم.

بفرما ببینیم چیکار می کنی :)
http://libjpeg.sourceforge.net

hsgpro
دوشنبه 19 آبان 1393, 21:26 عصر
بفرما ببینیم چیکار می کنی :)
http://libjpeg.sourceforge.net

آقا این 149 تا فایله؟! بعد djpeg یعنی چی؟ منظورم اینه اون d اولش برای چیه؟ چون اسم پروژه اش djpeg بود.

rahnema1
دوشنبه 19 آبان 1393, 21:34 عصر
djpeg یعنی decompress کردن jpeg

Amir4317
سه شنبه 20 آبان 1393, 20:03 عصر
بدون Extract چیزی خوند بهتره.
:چشمک:
عزیز دل برادر مگه میشه بدون استخراجشون خوندشون ؟؟

همه‌ی اونایی که گفتی هم با استخراج اینکار رو میکنن.

فرق مهم موتورهای بازی سازی هم همینه که فقط فایل مورد نظرشون (مرحله‌ی خاص از بازی) رو روی رم استخراج میکنن
حالا سرعت و دقت این کار میشه نقطه قوت یه موتور

در مورد فایل‌های زیپ بیشتر تحقیق کن؛ کِیف کن !:چشمک: