-2

このコードを使用して、特定の画像の基本的な形状を検出しています。しかし、それは画像を開くことができないことを示しています。私を助けてください。私の質問が明確でない場合は私に知らせてください

4

1 に答える 1

2

効果的な回答を得るには、これよりもはるかに詳細な質問が必要です(たとえば、MacintoshまたはiPhoneでこれを行っていますか)。

あなたが指摘したサンプルのコードの一部が失敗しているのは次のとおりです。

img=cvLoadImage("shape.jpg");

if(img==NULL)
{
    printf("Error in opening image\n");
    return -1;
}

アプリがファイルを見つけられる場所にファイルを配置する必要があります。

Macintoshを使用している場合は、実際のバイナリ実行可能ファイルが存在するのと同じ場所にファイルを配置します(例: " MyApp.app/Contents/MacOS/MyApp")。または、パスを変更して、画像が保存されていることがわかっている正確な場所にします(例:" /tmp/shape.jpg"または" /Users/sri/shape.jpg")。

iOS用に何をするかを追加するために編集されました。これを試してみてください:

NSString *str = [[NSBundle mainBundle] pathForResource:@"YQpBE" ofType:@"png"];
if(str)
{
    const char *pathToFile = [str UTF8String];
    img=cvLoadImage(pathToFile);
    if(img==NULL)
    {
        NSLog( @"could not open image file at path %@", str);
    }
} else {
    NSLog( @"could not find a file named YQpBE.png in the resource folder of this app");
}
于 2012-12-10T06:29:57.120 に答える