小编nkj*_*kjt的帖子

如何在matlab中获得jaccard相似度

我有一张桌子:

   x   y   z 
A  2   0   3   
B  0   3   0    
C  0   0   4    
D  1   4   0
Run Code Online (Sandbox Code Playgroud)

我想在Matlab中,在向量A,B,C和D之间计算Jaccard相似度.公式为:

在此输入图像描述

在这个公式中| x | 和| y | 表示不为零的项目数.例如| A | 对于| B |,非零的项目数为2 和| C | 它是1,对于| D | 它是2.

| x相交y | 表示不为零的公共项目数.| A交叉B | 是0. |相交D | 是1,因为两者中x的值都不为零.

例如:jaccard(A,D)= 1/3 = 0.33

我怎样才能在Matlab中实现它?

matlab similarity

5
推荐指数
1
解决办法
1万
查看次数

如何设置起始目录(在Matlab中使用uigetfile)到'计算机'?

我做了一个Matlab GUI.我想将输入文件的对话框设置为默认设置为'Computer'目录.我知道如何更改默认路径([FileName PathName] = uigetfile('D:\Applications\Matlab6p5\work\*.m;*.mdl;*.mat','MATLAB Files');),但我不知道在"计算机"(列出所有服务器和本地光盘名称的目录)的情况下路径的名称是什么.有什么建议?

directory matlab

5
推荐指数
1
解决办法
1824
查看次数

查找视频中的帧数

我试图逐帧显示视频,我需要知道帧的总数.但它显示错误:"无法确定此文件中的帧数".

obj = VideoReader('a.avi');
nof=obj.NumberOfFrames;
for i=1:nof
    img = read(obj,i);
    imshow(img);

end
Run Code Online (Sandbox Code Playgroud)

matlab

3
推荐指数
1
解决办法
5474
查看次数

反向图像模糊滤镜(非锐化蒙版)

我正在寻找获得反向模糊过滤器的方法。我有原始位图,我想制作类似高斯模糊反转的东西。

让我们称它为 invB,高斯模糊的操作作为函数 GBlur 和原始图像 O。我想要的过滤器将 invB 作为输出,以便 GBlur(invB) = O。

此操作与锐化图像无关(我认为它会使图像失真而不是使其更清晰)并且永远不会用于从模糊图像中恢复原始图像(它与该问题的假设和可用数据不同)。

缩短 - 过滤器应与原始图像相反,在高斯模糊后给出原始图像。InvB 中可能有更多过滤器。

提前致谢。

#已编辑。

原来的:

在此处输入图片说明

锐化和高斯模糊后:

锐化和模糊的玫瑰

在高斯模糊之后锐化:

模糊和锐化的玫瑰

所以我有原始图像,我必须通过高斯模糊([[1,2,1],[2,4,2],[1,2,1]],/ 16)传递图像并在之前准备原始图像模糊,以便它等于原始图像(尽可能,并且在不可能时最接近原始图像)。

也许由于问题的性质,我无法通过谷歌找到任何东西。请不要通过去模糊来解决这个问题——它根本无济于事。

graphics image-processing filter

0
推荐指数
1
解决办法
9739
查看次数