2013-04-09 79 views
3

有没有什么方法可以让用户在我的cpp控制台应用程序中用OpenCV手动选择文件?我做了一些研究,但发现迄今这些琐碎的任务无解...用cpp中的“选择文件”对话框创建GUI,OpenCV

由于提前, JP

+1

不能与内置的OpenCV函数 – 2013-04-09 04:49:57

+0

感谢快回答!那么,我必须实现这个功能,因为客户要求如此...你会推荐什么作为最痛苦的方式来做到这一点? – user2208392 2013-04-09 05:00:34

+0

Qt是一个很好的跨平台GUI库。最近增加了对Android和iOS的支持我相信 – alrikai 2013-04-09 05:06:54

回答

3

对于这一点,你必须添加任何可用的GUI库和处理与GUI部保持图像处理部分的优势。 (例如,你可以尝试QT)

1

如果你想在Ubuntu简单的打开文件对话框,你可以这样做:

FILE *in; 
if (!(in = popen(
     "zenity --title=\"Select an image\" --file-selection", 
     "r"))) { 
    return 1; 
} 

char buff[512]; 
string selectFile = ""; 
while (fgets(buff, sizeof(buff), in) != NULL) { 
    selectFile += buff; 
} 
pclose(in); 

//remove the "\n" 
selectFile.erase(std::remove(selectFile.begin(), selectFile.end(), '\n'), 
      selectFile.end()); 

// path + filename + format 
Mat image = imread(selectFile); 
相关问题