دو سوال [solved]



  • سلام بر دوستان

    1. چگونه کی تونم در کیوتی یک عدد
      string
      که در یک Text Edit
      نوشته میشه رو به دابل تبدیل کنم و اون عدد خوانده شده را به عنوان پارامتر به تابع پاس بدم؟
      هدف من اینه که روی یک عکس thresholding
      انجام بدم...
      مسلما دو راه برای این کار دارم یکی اینکه از تابع creatTrackbar
      استفاده کنم که تا به حال موفق نشدم چون در فراخوانی تابع
      cv::threshold
      که یک تابع callback
      هست دچار مشکل شدم
      به خاطر همین الان دارم سعی می کنم که مقدار ترشولد را از کاربر بگیرم (که البته راه معقولی نیست...)

    از دوستان اگر کسی می تونه کمک کنه ممنون میشم
    البته ترجیح می دم همون ترک بار رو استفاده کنم ولی اگر نشد دوستان به این سوال جواب بدن که چگونه می تونم استرینگ خوانده شدو در ادیت تکست را به دابل بر گردونم و در
    cv::threshold
    استفاده کنم

    پیشاپیش از کمکتون ممنونم...



  • p{direction:rtl; text-align:right;font-family:tahoma}. برای تبدیل مقدار QTextEdit به Double از کد زیر استفاده کنید:
    @
    qtextedit.toPlainText().toDouble()
    @

    p{direction:rtl; text-align:right;font-family:tahoma}. میتونید خروجی این دستور رو به یک متغییر Double نسبت داده و به تابع ارسال کنید و یا همین دستور رو مستقیما به عنوان پارامتر تابع ارسال کنید.



  • ممنون از شما دوست عزیز
    فعلا مشکل من حل شد با راه حل شما اما
    آیا شما راه حلی برای ایجاد
    trackbar
    دارید؟
    چون مسلما راه حل معقول تری نسبت به این روش هست و
    user friendly
    تر هست
    کد من این هست

    void Dialog::on_btnthreshld_clicked()
    {

    cv::Mat dst;
    
      cvCreateTrackbar("Threshold value","binary image",&threshold_value,max_BINARY_value,&Dialog::threshod_demo());
    

    }
    void Dialog::threshod_demo(int,void *){
    cv::Mat dst;
    cv::threshold(image,dst,threshold_value,max_BINARY_value,CV_THRESH_BINARY);
    imshow("windows",dst);
    }
    در فایل
    dialog.h
    هم
    در قسمت
    public
    اینگونه تابع را تعریف کرده ام...
    public:
    explicit Dialog(QWidget *parent = 0);
    ~Dialog();
    void threshod_demo(int,void *);

    پیشاپیش ازتون ممنونم...



  • p{direction:rtl; text-align:right;font-family:tahoma}. ترک بار چیه؟ اگه منظورت اسلایدره میشه سیگنال value change رو به هر اسلاتی که double می‌گیره متصل کرد.



  • سلام بر شما آقا سروش
    اگه میشه یه کم دیگه راهنمایی کنین
    من اولین پروزه ام هست که دارم با کیوتی و
    opencv
    انجام میدم

    منظور من همون اسلایدره...برا این کار یک تابع تو خود opencv
    هست به نام
    cvcreatetrackbar
    من از این تابع تو محیط
    visual studio
    استفاده کردم ولی تو کیوتی هنوز نشده
    ازتون ممنونم...



  • p{direction:rtl; text-align:right;font-family:tahoma}. دوست عزیز لطفا راهنمای استفاده از فروم فارسی رو مطالعه بفرمایید :)
    بیشتر به خاطر راست به چپ شدن متن



  • [quote author="soheil1365" date="1358081186"]سلام بر شما آقا سروش
    اگه میشه یه کم دیگه راهنمایی کنین
    من اولین پروزه ام هست که دارم با کیوتی و
    opencv
    انجام میدم

    منظور من همون اسلایدره...برا این کار یک تابع تو خود opencv
    هست به نام
    cvcreatetrackbar
    من از این تابع تو محیط
    visual studio
    استفاده کردم ولی تو کیوتی هنوز نشده
    ازتون ممنونم...

    [/quote]

    p{direction:rtl; text-align:right;font-family:tahoma}. کار درستی نیست! شما توی کیوت نیازی نداری که از highgui استفاده کنی. چون خودش رابط کاربری خیلی تکمیلی داره. مخصوصاً سیگنال‌ها و اسلات‌ها برای کارهای پردازش تصویر خیلی به درد می‌خورن. فقط باید یادت باشه که یه ویجت برای نمایش IplImage توی محیط کیوت درست بکنی که کاراتو را بندازه. قبلاً من زیاد پردازش تصویر نوشتم با کیوت. شاید سورس‌ها و مخصوصاً اون ویجت نمایش تصویر به دردت بخوره. سعی کن دوباره‌کاری نکنی.

    p{direction:rtl; text-align:right;font-family:tahoma}. مثلاً با اسلایدرهای مختلف کالیبراسیون رنگ نوشتم. همین کد احتمالاً به دردت می‌خوره:

    !http://s3.picofile.com/file/7462485692/vc_1.jpeg(VC1)!

    p{direction:rtl; text-align:right;font-family:tahoma}. دقت کن که اینجا از اسلایدر برای تغییرات بزرگ و از doubleSpinBox برای تغییرات کوچیک و دقیق استفاده شده. نیازی به lineEdit نیست. و اصولاً منطقی هم نیست که lineEdit بذاری.

    p{direction:rtl; text-align:right;font-family:tahoma}. سورس‌ها رو می‌تونی از این‌جا برداری. فقط اجازه‌نامه‌ش LGPL نسخهٔ ۲٫۱ هست.

    http://sourceforge.net/projects/uurt-humanoid/



  • p{direction:rtl; text-align:right;font-family:tahoma}. ممنون از شما
    کمک بزرگی کردین...


Log in to reply
 

Looks like your connection to Qt Forum was lost, please wait while we try to reconnect.