خواندن و نشان دادن عکس های متوالی در opencv - هفت خط کد انجمن پرسش و پاسخ برنامه نویسی

خواندن و نشان دادن عکس های متوالی در opencv

0 امتیاز

سلام من می خوام یکسری عکس که اسم هاشون به این شکل هست رو پشت سر هم  باز کنم :

C:\images\img00.jpg

C:\images\img01.jpg

....

C:\images\img09.jpg


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

int main( )
{
    char *addr="D:\images\img0%d.jpg";
    for(int i=0;i<10;i++)
    {
        char naddr[100];
        sprintf(naddr,addr,i);
        printf("%s\n",naddr);
        Mat img=imread(naddr);
        imshow("win",img);
        waitKey(50);
    }
}

ممنون میشم کمک کنید

 

سوال شده فروردین 6, 1393  بوسیله ی مزدا (امتیاز 32)   2 5 6

1 پاسخ

+1 امتیاز

خب مشخصه زمانی که آدرس میدین یا / باید بزارین یا 2 تا \\ !

    char *addr="D:\images\img0%d.jpg"; \\wrong
    char *addr="D:\\images\\img0%d.jpg"; \\ok

در ضمن از videoCapture هم میتونین استفاده کنین :

int main( )
{
    Mat frame;
    
    VideoCapture capture("D:\\images\\img%2d.jpg");
    if(!capture.isOpened())
       return -1;
    
    for(;;)
    {
        capture >> frame;
        if(frame.empty())
            break;        
        waitKey(100);
    }
}
پاسخ داده شده فروردین 6, 1393 بوسیله ی BlueBlade (امتیاز 15,315)   15 18 89
...