PDA

View Full Version : تراز کردن تصویر بر اساس یک خط



CYCLOPS
جمعه 02 مرداد 1388, 18:23 عصر
سلام به تمامی دوستان

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

CYCLOPS
پنج شنبه 08 مرداد 1388, 06:16 صبح
دوستان محترم برنامه نویس میشه یه توجهی به این تاپیک داشته باشید ؟
حتی یه لینک یا راهنمایی کوچک هم بهتر از هیچی هست و میتونه برام مفید باشه
من در این زمینه خیلی پیگیری کردم و به نتیجه ای نرسیدم امیدوارم مثل همیشه دوستان این سایت با راهنمایی هاشون کمکم کنند

Open-Source
پنج شنبه 08 مرداد 1388, 10:03 صبح
ببین دو نقطه از تصویر رو بگیر(منظورم y دو سر خط مورب) بعد با هر مقدار چرخش چک کن که آیا با هم برابر شدند؟.
اگه برابر شدند خط صاف شده.

CYCLOPS
جمعه 09 مرداد 1388, 07:17 صبح
ببین دو نقطه از تصویر رو بگیر(منظورم y دو سر خط مورب) بعد با هر مقدار چرخش چک کن که آیا با هم برابر شدند؟.
اگه برابر شدند خط صاف شده.

ممنون از توجهتون نگاه کنید بیشتر سوال من اینه مثلا ما یه شکل داریم (مثل تصویر پیوست شده در پست 1همین تاپیک) که سایز تصویر مشخص نیست + فقط میدونیم یه خط کج تو تصویر هست ولی جزئیات دیگه مثل مختصات دو سر خط و . . . رو هم نداریم به جز این نکته که تو تصویر ما فقط رنگ های سفید و مشکی وجود دارند (در واقع تصویر به صورت 1bpp) هست با این توضیحات آیا با استفاده از امکانات خود دات نت میشه مسئله رو حل کرد یا باید دست به دامن کامپوننت یا لایبرری خاصی شد ؟؟

Open-Source
جمعه 09 مرداد 1388, 18:33 عصر
ممنون از توجهتون نگاه کنید بیشتر سوال من اینه مثلا ما یه شکل داریم (مثل تصویر پیوست شده در پست 1همین تاپیک) که سایز تصویر مشخص نیست + فقط میدونیم یه خط کج تو تصویر هست ولی جزئیات دیگه مثل مختصات دو سر خط و . . . رو هم نداریم به جز این نکته که تو تصویر ما فقط رنگ های سفید و مشکی وجود دارند (در واقع تصویر به صورت 1bpp) هست با این توضیحات آیا با استفاده از امکانات خود دات نت میشه مسئله رو حل کرد یا باید دست به دامن کامپوننت یا لایبرری خاصی شد ؟؟


ببین دوست من فکر نمیکنم کامپننتی برای اینجور کارا پیدا بشه.
این جور کارا یه به هوش مصنوعی معروفند که همش باید خودت کد نویسی کنی.

مثلا شما باید پیکسل به پیکسل تصویر رو بگیری تا به پیکسل مورد نظر برسی.

در این تصویری که شما گذاشتید برای بدست آوردن دو سر خط باید از ابتدا تا انتهای تصویر رو پیکسل به پیکسل بررسی کنی اگه یه پیکسلی رنگش مشکی بود و فقط یه دونه از پیکسل های اطرافش مشکی و بقیه سفید بود سر خط شما هستش.

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

Chris_Ronaldo
جمعه 09 مرداد 1388, 18:44 عصر
سلام

اگر منظور شما چرخاندن تصویر هست می توانید از کد این صفحه کمک بگیرید:
http://www.dreamincode.net/code/snippet2640.htm

اگر هم تصویری که مد نظر شما هست توسط اسکنر روی سیستم شما اسکن می شود می توانید از اسکنرهایی که این چرخش را اصلاح می کنند استفاده کنید.

مثلا چنانچه هدف شما اسکن کردن پاسخ تست های آزمون هست (همانند برگه تست کنکور) می توانید از اسکنرهایی که گفتم استفاده کنید که سرعت اسکن خوبی هم دارند.
:چشمک:

Chris_Ronaldo
جمعه 09 مرداد 1388, 18:58 عصر
ببین دوست من فکر نمیکنم کامپننتی برای اینجور کارا پیدا بشه.
این جور کارا یه به هوش مصنوعی معروفند که همش باید خودت کد نویسی کنی.

مثلا شما باید پیکسل به پیکسل تصویر رو بگیری تا به پیکسل مورد نظر برسی.

در این تصویری که شما گذاشتید برای بدست آوردن دو سر خط باید از ابتدا تا انتهای تصویر رو پیکسل به پیکسل بررسی کنی اگه یه پیکسلی رنگش مشکی بود و فقط یه دونه از پیکسل های اطرافش مشکی و بقیه سفید بود سر خط شما هستش.

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

البته کامپوننت برای کارهای گرافیکی در اختیار برنامه نویسان قرار میگیره و وجود هم داره.
کامپوننت هایی که انواع و اقسام کارهای گرافیکی را support می کنند.
در رابطه با هوش مصنوعی هم درست فرمودید.
مفاهیمی چون fuzzy crazy و از این قبیل برای تشخیص و پردازش روی تصاویر در نظر گرفته شده اند.
یادمه چند وقت پیش مجموعه کامپوننتی برای پردازش روی تصاویر پیدا کردم ولی فرصت استفاده پیش نیومد.
اسمش LeadTools هست.
سایتش هم اینه:
http://www.leadtools.com
ابزار خیلی گرونی هست اما لینک دانلود به همراه کرک نسخه های 14 و 15 و حتی 16 اگر بگردی پیدا می کنید.

:چشمک:

مصطفی ساتکی
دوشنبه 19 مرداد 1388, 14:17 عصر
لطفا در زمینه ای که اطلاعات ندارید اظهار نظر نفرمائید.
جواب شما اینکه بایستی از تکنیک hough برای تشخیص زاویه خظوط استفاده کنید . تصویر رو لبه بگیرید و سپس هاف بگیرد بیشترین زوایه ای که در اختیار شما قرار می ده همون زاویه مطلوب شماست. از این روش تو ocr ih و omr برای تعیین زوایه صفحه استفاده می شه.
نکته : اگز صفحه تون به غیر خط دارای layout های گوناگون باشه بایستی در ابتدا پیش پردازش های Morphology انجام بدی.