疾病我的工作是在特征提取图像中提取准确的疾病的最佳特性的算法

2视图(30天)
提取的特征对具体地区的兴趣疾病的水果
如何分配测试和训练数据是最好的机器学习算法的特征提取和分类的疾病。

接受的答案

diwakar diwakar
diwakar diwakar 2023年6月11日
移动:图像分析 2023年6月11日
从疾病中提取特征图像和识别的具体感兴趣的区域(ROI),您可以考虑有几种算法和技术。
cnn已经非常成功的图像分析任务,包括特征提取和分类。他们学习的层次表示图像和ROI可以识别相关特性。
而不是使用预定义的特征提取算法,您可以使用深度学习模型如autoencoders或pre-trained模型像VGG16或ResNet学特性直接从图像。
这段代码将有助于您理解的基本概念:
%负载pre-trained VGG16模型
网= vgg16;
%将路径设置为你的病图像数据集
datasetPath =“path_to_your_dataset”;
%的比例数据用于测试
testPercentage = 0.2;
%负载疾病图像数据集
imd = imageDatastore (datasetPath,“IncludeSubfolders”,真的,“LabelSource”,“foldernames”);
%将数据集分为训练集和测试集
[trainImds, testImds] = splitEachLabel (imd, testPercentage“随机”);
使用VGG16 %从训练集提取特征
trainImds featuresTrain =激活(净,“fc7”,“MiniBatchSize”32岁的“OutputAs”,“列”);
%从测试组使用VGG16提取特征
testImds featuresTest =激活(净,“fc7”,“MiniBatchSize”32岁的“OutputAs”,“列”);
%得到训练的标签
trainLabels = trainImds.Labels;
%得到测试标签
testLabels = testImds.Labels;
%训练分类器对提取的特征
分类器= fitcecoc (featuresTrain trainLabels);
%在测试集进行预测
predictedLabels =预测(分类器,featuresTest);
%评估分类的准确性
精度=意味着(predictedLabels = = testLabels);
流(准确性:% .2f % % \ n '、准确性* 100);
在这段代码中,我们使用VGG16模型从图像中提取特征在训练集和测试集。然后使用提取的特征训练多分类器(fitcecoc)和测试集进行预测。计算并显示分类的准确性。
此外,选择最好的机器学习算法对特征提取和分类取决于各种因素的复杂性等问题,数据集的大小和质量,可用的计算资源。

答案(1)

图像分析
图像分析 2023年6月11日
“如何分配测试和训练数据”
试一试 randsample
帮助randsample
RANDSAMPLE随机样本,有或没有更换。Y Y = RANDSAMPLE (N, K)返回一个列向量的K值随机取样均匀,不重复的整数1:N。Y = RANDSAMPLE(人口、K)返回K值随机取样均匀,没有更换,从向量中的值。Y是一个向量相同类型的人口。注意:当人口是一个数值向量只包含非负整数的值,它可能长度是1,使用Y = DATASAMPLE(人口、K、“取代”,假)或Y =人口(RANDSAMPLE(长度(人口),K))而不是Y = RANDSAMPLE(人口、K)。Y = RANDSAMPLE (N, K,取代)或RANDSAMPLE(人口、K、替换)返回一个样品用替换如果替换是真的,或不更换如果替换是假的(默认)。Y = RANDSAMPLE (N, K,真的,W)或RANDSAMPLE(人口,K,真的,W)返回一个加权样本,使用积极的重量W,用替换。通常是一个向量的概率。这个函数不支持加权不重复抽样。金宝appY = RANDSAMPLE(年代,…)使用随机数生成的随机数流年代。 RANDSAMPLE uses the MATLAB default random number stream by default. Examples: Draw a single value from the integers 1:10. n = 10; x = randsample(n,1); Draw a single value from the population 1:n, when n > 1. y = randsample(1:n,1); Generate a random sequence of the characters ACGT, with replacement, according to specified probabilities. R = randsample('ACGT',48,true,[0.15 0.35 0.35 0.15]) See also RAND, RANDPERM, RANDSTREAM. Documentation for randsample doc randsample Other uses of randsample gpuArray/randsample quantum.gate.QuantumState/randsample
您还可以使用 randperm
帮助randperm
RANDPERM随机排列。P = RANDPERM (N)返回一个向量,其中包含一个随机排列的整数1:N。例如,RANDPERM(6)可能(2 4 5 6 1 3)。P = RANDPERM (N, K)返回一个行向量,其中包含K独特的整数随机选择从1:N。例如,RANDPERM(6,3)可能(4 2 5)。RANDPERM (N, K)返回一个向量K的惟一值。这有时被称为K-permutation 1: N或不重复抽样。允许重复值的选择,有时被称为放回抽样,用兰迪(N, K)。RANDPERM调用兰德因此随机数发生器的状态变化是兰德,兰迪,RANDN。控件生成器使用RNG共享。 See also NCHOOSEK, PERMS, RAND, RANDI, RNG. Documentation for randperm doc randperm Other uses of randperm gpuArray/randperm RandStream/randperm
我不确定他们是如何不同,。

标签

社区寻宝

找到宝藏在MATLAB中央,发现社区如何帮助你!

开始狩猎!