بخشی از مقاله
چکیده: در این مقاله نرم افزاری برای استخراج مختصات یک منحنی دلخواه ارائه شده است. نرم افزار طوری طراحی شده است که کاربر با داشتن تنها دو مختصات از منحنی میتواند به مختصات تمامی نقاط منحنی دست یابد. به کمک این نرم افزار که در آن از پردازش تصویر به عنوان مغز نرم افزار استفاده شده است ، دیگر احتیاجی به داشتن تمامی مختصات منحنی ها در مقالات نبوده و تصویر اسکن شده منحنی برای به دست آوردن تمامی مختصات منحنی کافی میباشد. نرم افزار مورد نظر به کمک GUIDE نرم افزار مطلب - - MATLAB نوشته شده است.
-1 مقدمه1
در بسیاری از مقالات علمی نتایج شبیه سازی به صورت نمودار ترسیم و تفسیر میشوند و دستیابی به مختصات دقیق نمودارها میسر نیست. برای میزان تطبیق نتایج حاصل از کار پژوهشی خود با دیگران و نشان دادن برتری آن، نیاز به مختصات دقیق نمودار آنها داشته، که گاهی اوقات می توان با یک Email ساده و در خواست مختصات منحنی نمودار، مشکل را برطرف کرد. متاسفانه در اکثر مواقع پژوهشگران از ارسال دقیق مختصات منحنی ها امتناع ورزیده و پژوهشگر جدید را با مشکل بزرگی مواجه میسازند.
بنابراین اگر نرم افزاری وجود داشته باشد که فقط با تصویر منحنی نمودار بتواند کلیه مختصات منحنی را استخراج کند بی شک گامی بسیار بزرگ در جهت پیشبرد اهداف پژوهشی به حساب می-آید. در این نرم افزار که مولف نام آن را Curve Fitting نهاده است، برای رسیدن به تمامی مختصات منحنی تنها به 2 مختصات از منحنی نیاز داشته که در همه مقالات حداقل دو مختصات داده شده است. نرم افزار Curve Fitting به کمک GUIDE که یک رابط گرافیکی در MATLAB است، نوشته شده است و استفاده از آن بسیار ساده میباشد.
-2 طراحی نرم افزار
در این بخش نحوه طراحی نرم افزار آورده شده است. این بخش خود به چند زیر بخش تقسیم شده که هر یک از آن ها در ادامه به تفسیر شرح داده میشوند.
-1-2 استخراج نمودار از مقاله مورد نظر
ابتدا نموداری را که نیاز به داشتن مختصات دقیق آن است با تکنیک های موجود در کامپیوتر - کپی کردن، عکس گرفتن و ... - به برنامه Paint منتقل میشود. در این مرحله باید تمامی نقاط در نمودار که جزو مختصات منحنی نیستند با پا کن برنامه Paint پاک شده، به طوریکه در نهایت فقط تصویر منحنی نمودار باقی بماند. به کاربران توصیه می شود که در پاک کردن نقاط نهایت حوصله و دقت را داشته باشند. پس از انجام مرحله فوق نمودار در فرمت BMP ذخیره میگردد.
-2-2 پردازش تصویر
این مرحله می تواند به مغز نرم افزار Curve Fitting نامگذاری شود. از آنجایی که نمودار به فرمت رنگی BMP ذخیره شده است برای ادامه پردازش باید به سطوح خاکستری Gray Level تبدیل شود. با این عمل تصویر - Im تصویر نمودار - دارای شدت روشنایی بین صفر تا 255 می گردد. در تصویر، سطح صفر کمترین شدت روشنایی - مشکی - و سطح 255 بیشترین شدت روشنایی - سفید - را دارا است. در ادامه برای رسیدن به دو سطح صفر و 255، تصویر Im با اندازه M N M - سطر با N ستون - با استفاده از رابطه - 1 - باینری میشود. در رابطه - 1 - ، Im i , j به معنای مقدار شدت روشنایی در سطر i ام و ستون j ام Im است. در رابطه m - 1 - مجموعه سطرها و n مجموعه ستون های Im میباشد.
مطابق رابطه - 1 - سطوح خاکستری که شدت روشنایی آن کمتر از 255 است با سطح صفر - مشکی - و در غیر این صورت با سطح - 255 سفید - جایگزین میشود. بنابراین در تصویر جدید فقط 2 سطح صفر و - 255 مشکی و سفید - موجود است. سطوح صفر در واقع همان مختصات منحنی نمودار میباشند. ایده اصلی در استخراج مختصات منحنی اسکن کردن منحنی نمودار با استفاده از یک ماسک 3 3 است.
ابتدا اولین نقطه از نمودار که دارای سطح خاکستری صفر بوده انتخاب شده و در مرکز ماسک قرار میگیرد. حال ماسک از این نقطه شروع به اسکن کردن نمودار میکند تا پیکسلی از تصویر را که دارای سطح خاکستری صفر است را بیابد. در هر مرحله ماسک عمل اسکن کردن را حداکثر تا 8 مرتبه انجام میدهد و در این عمل اگر در مرتبه کوچکتر از 8 به نقطه ای از تصویر برسد که دارای سطح خاکستری صفر بوده این نقطه جدید به عنوان مرکز جدید ماسک در نظر گرفته شده و عملیات اسکن مجددا حول این مرکز انجام می-شود.
البته در هر بار اسکن، مراکز ماسک که همان پیکسل های منحنی هستند در آرایه ای ذخیره میشوند و مراکز قبلی که توسط ماسک اسکن شده بودند در عدد 10 ضرب شده تا در اسکن کردن بعدی ماسک، این مراکز دوباره انتخاب نشوند. برای درک بهتر عمل اسکن کردن شکل - 1 - آورده شده است. مرکز ماسک در شکل - 1 - به رنگ خاکستری نشان داده شده است.
از آنجاییکه ماسک عمل اسکن تصویر را حداکثر 8 مرتبه انجام میدهد پس اگر بعد از 8 مرتبه اسکن، ماسک نتواند نقطه ای از تصویر را پیدا کند که سطح خاکستری آن صفر باشد، آن گاه منحنی به انتهای خود رسیده و بدین ترتیب عمل اسکن کردن ماسک به پایان میرسد. تا این مرحله تمامی پیکسل هایی که مشکی بودند استخراج شده و در آرایه های Datax و Datay ذخیره میشوند. ماکزیمم بعد Datax و Datay به ترتیب برابر N و M است.
در ادامه باید مختصات دقیق منحنی نمودار را با توجه به مقیاس اصلی آن که در مقاله مورد نظر موجود است، به دست آورد. فرض کنید مختصات دو نقطه از منحنی نمودار به شماره های پیکسل i, j و i , j به ترتیب برابر - x1,y1 - و - x2,y2 - بوده و x محور در جهت افزایش ستون و y محور در جهت افزایش سطر باشد. مقیاس واقعی طولی و عرضی یک پیکسل از منحنی نمودار، با استفاده از رابطه - 2 - به دست میآید.
بنابراین طول و عرض یک پیکسل با توجه به مقیاس واقعی نمودار و داشتن دو نقطه از مختصات نمودار به دست میآید. حال با استفاده از رابطه - 2 - و داشتن تمامی پیکسل های منحنی نمودار که در مرحله قبل استخراج شده اند، می توان مختصات واقعی تمامی نقاط دیگر از منحنی نمودار را مطابق رابطه - 3 - دست آورد. همانطور که در شکل - 2 - نشان داده شده است، در پردازش تصویر جهت مثبت محور y رو به پایین بوده و برای مطابقت داشتن با محور y منحنی نمودار، که در تمامی مقالات جهت مثبت آن به سمت بالا است مقدار K2 مطابق رابطه - 3 - به دست آمده است. در رابطه X - 3 - و Y مختصات نهایی منحنی نمودار می باشند که می توان به راحتی آن را ترسیم کرد.
-3 تست نرم افزار
نمایی کلی نرم افزار در ضمیمه مقاله نشان داده شده است. در این بخش برای تست کردن نرم افزار Curve Fitting دو منحنی موجود در مقاله [1] که در شکل - 3 - نشان داده شده است انتخاب میشوند. ابتدا نمودار بالایی شکل - 3 - ازمقاله [1] کپی شده و در Paint قرار داده میشود و سپس با استفاده از پاک کن Paint تمامی نقاط زاید به غیر از منحنی نمودار پاک میگردد. نتیجه این عمل در شکل - 4 - نشان داده شده است.