PDA

View Full Version : نمایش تصویر در کیوت



gholami.vahid
شنبه 10 مرداد 1394, 13:37 عصر
سلام دوستان
من یه پروژه پردازش تصویر دارم و میخوام اونو و با استفاده از فرم در کیوت به کاربر نمایش بدم . تا اینجاش که روش های مختلفی هست اما :

اول اینکه که با کدوم روش کاربر میتونه بر روی تصویر پاره خط رسم کنه .

دوم اون پاره خط رو روی او تصویر ذخیره کنه و تا دوباره بتونم روی اون تصویر پردازش رو باتوجه به اون پاره خط انجام بدم.

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

pswin.pooya
جمعه 16 مرداد 1394, 22:24 عصر
سلام دوستان
من یه پروژه پردازش تصویر دارم و میخوام اونو و با استفاده از فرم در کیوت به کاربر نمایش بدم . تا اینجاش که روش های مختلفی هست اما :

اول اینکه که با کدوم روش کاربر میتونه بر روی تصویر پاره خط رسم کنه .

دوم اون پاره خط رو روی او تصویر ذخیره کنه و تا دوباره بتونم روی اون تصویر پردازش رو باتوجه به اون پاره خط انجام بدم.

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

سوالی که پرسیدن خیلی کلی هست و با توجه به امکانات موجود هزاران راه برای اینکار وجود داره. اگر برای پردازش تصویر می خوایین اینکار رو بکنید بهتره از توابع OpenCV استفاده کنید که بیشترین سازگاری رو با سخت افزار و انواع تصویر دارن ولی اگر هدف فقط نمایش دادن هست می تونید از کلاسهای Qt مثل QPainter استفاده کنید. و یا اگر هدف گرافیکی سه بعدی و ... دارید می تونید از OpenGL و یا Direct3D استفاده کنید که به مراتب امکانات پیچیده تر و بهتری رو برای اینکار فراهم می کنند.

gholami.vahid
شنبه 17 مرداد 1394, 09:28 صبح
سوالی که پرسیدن خیلی کلی هست و با توجه به امکانات موجود هزاران راه برای اینکار وجود داره. اگر برای پردازش تصویر می خوایین اینکار رو بکنید بهتره از توابع OpenCV استفاده کنید که بیشترین سازگاری رو با سخت افزار و انواع تصویر دارن ولی اگر هدف فقط نمایش دادن هست می تونید از کلاسهای Qt مثل QPainter استفاده کنید. و یا اگر هدف گرافیکی سه بعدی و ... دارید می تونید از OpenGL و یا Direct3D استفاده کنید که به مراتب امکانات پیچیده تر و بهتری رو برای اینکار فراهم می کنند.


سلام
یعنی شما میفرمایید که میشه داخل opencv یه خط رو روی تصویر رسم کرد به طوری که بشه با موس اون رو حرکت داد ؟

من از qGraphicesItem استفاده میکنم .

pswin.pooya
شنبه 17 مرداد 1394, 12:06 عصر
یعنی شما میفرمایید که میشه داخل opencv یه خط رو روی تصویر رسم کرد به طوری که بشه با موس اون رو حرکت داد ؟

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

gholami.vahid
شنبه 17 مرداد 1394, 16:16 عصر
نگفته بودید که بشه با ماوس حرکتش داد اما فکر کنم داخل OpenCV به کمک highgui بشه همچین کاری کرد. کلا همنطور که گفتم روش زیاد هست مونده تا کاربرد شما چی باشه.

ببین من این تصویر یک فرد رو به صورت برش شده از چشم ها به opencv میدم و با او به این صورت عمل پردازش تصویر رو انجام میدم :

134029

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

134030

حالا فقط میخوام که اگه این خط ها دور عینک به طور دقیق قرار نگرفت , کاربر با موس اونها رو جابجا کنه و در محل دقیق خودش قرار بده . من این کارو با کیوت انجام دادم اما یه مشکلی که داره این خط ها از نوع qGraphicesLinerItem هستند و بعضی اقات وقتی یک خط را انتخاب میکنم یک خط دیگر بجایی آن انتخاب میشود .البته بعضی اوقات
به نظر شما opencv میشه یک خط رو با موس انتخاب و حرکت داد ؟ نکته دیگه ای که باید توجه کرد من بعد از پایان برنامه مختصات خط ها رو به پیکسل میخوام.