我有一张桌子:
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 GUI.我想将输入文件的对话框设置为默认设置为'Computer'目录.我知道如何更改默认路径([FileName PathName] = uigetfile('D:\Applications\Matlab6p5\work\*.m;*.mdl;*.mat','MATLAB Files');),但我不知道在"计算机"(列出所有服务器和本地光盘名称的目录)的情况下路径的名称是什么.有什么建议?
我试图逐帧显示视频,我需要知道帧的总数.但它显示错误:"无法确定此文件中的帧数".
obj = VideoReader('a.avi');
nof=obj.NumberOfFrames;
for i=1:nof
img = read(obj,i);
imshow(img);
end
Run Code Online (Sandbox Code Playgroud) 我正在寻找获得反向模糊过滤器的方法。我有原始位图,我想制作类似高斯模糊反转的东西。
让我们称它为 invB,高斯模糊的操作作为函数 GBlur 和原始图像 O。我想要的过滤器将 invB 作为输出,以便 GBlur(invB) = O。
此操作与锐化图像无关(我认为它会使图像失真而不是使其更清晰)并且永远不会用于从模糊图像中恢复原始图像(它与该问题的假设和可用数据不同)。
缩短 - 过滤器应与原始图像相反,在高斯模糊后给出原始图像。InvB 中可能有更多过滤器。
提前致谢。
#已编辑。
原来的:

锐化和高斯模糊后:

在高斯模糊之后锐化:

所以我有原始图像,我必须通过高斯模糊([[1,2,1],[2,4,2],[1,2,1]],/ 16)传递图像并在之前准备原始图像模糊,以便它等于原始图像(尽可能,并且在不可能时最接近原始图像)。
也许由于问题的性质,我无法通过谷歌找到任何东西。请不要通过去模糊来解决这个问题——它根本无济于事。