matlab提取matfile中的特征

标签 matlab image-processing feature-detection

我有 30 片白色背景的不同叶子的图像,编号为 1-30。我正在做一个图像处理项目,用户可以加载一个新的白色背景的叶子图像,程序会将它与数据库中的图像进行比较,并显示最相似的图像。我是 matlab 的新手。

如何提取特征并将其以 double 格式存储到数据库(mat 文件)?

最佳答案

您的项目中需要一个特征检测部分来提取特征集。这将是一个生成具有特征的输出数组或矩阵的 matlab 函数。为了知道哪个休假产生了这些特征,您需要用字符串标记数据。 Matlab 具有用于存储数据和文本的结构,例如本例中取自 PRtools 的结构。 :

> struct(A)
ans = 
        data: [100x3 double]
     lablist: {2x4 cell}
        nlab: [100x1 double]
     labtype: 'leave1'
     targets: []
     featlab: [3x2 char]
     featdom: {[]  []  []}
       prior: []
        cost: []
     objsize: 100
    featsize: 3
       ident: [100x1 struct]
     version: {[1x1 struct]  '21-Jul-2007 15:16:57'}
        name: []
        user: []

例如,特征可以是像素值,因此它们将存储在数组中。这是一项简单的任务,但您首先需要阅读一些有关该主题的内容。

主要问题是为您选择的分类器选择训练集和测试集(特征)。这将取决于您使用的功能数量、它们的相似程度以及许多您无法先验知道的事情,因此您将不得不尝试不同的训练/测试集和功能配置。

matlab 设计中有一个工具箱可用于此目的,不妨一试:PRtoolbox .

祝你好运。

关于matlab提取matfile中的特征,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/8967322/

相关文章:

java - 从 Java 读取 .mat 文件

matlab - Matlab到openCV代码转换

python - opencv findContours 错过了一些区域。[没有得到所有正确的边界框]

java - 如何使用 OpenCV Java 转换矩阵中的矩形颜色 (ROI)?

c++ - 根据最近邻距离比绘制匹配项

matlab - 依次更改散点图中每个点的颜色

performance - 矩阵预分配 - MATLAB

algorithm - 1位位图数据如何转换为8位(24bpp)?

matlab - 为什么 SIFT 在 Matlab 中不可用?

javascript - 代码库中的浏览器功能检测——我在使用……吗?