Tag: matlab

MATLAB中的最近邻插值algorithm

我正在尝试使用最近邻居插值algorithm来编写我自己的扩大input图像的函数。 不好的部分是我能够看到它是如何工作的,但无法findalgorithm本身。 我会很感激任何帮助。 以下是我尝试将input图像放大2倍的原因: function output = nearest(input) [x,y]=size(input); output = repmat(uint8(0),x*2,y*2); [newwidth,newheight]=size(output); for i=1:y for j=1:x xloc = round ((j * (newwidth+1)) / (x+1)); yloc = round ((i * (newheight+1)) / (y+1)); output(xloc,yloc) = input(j,i); end end 这是马克的build议后的输出

如何从C调用MATLAB代码?

我有一些在MATLAB中绘制三angular形的代码 。 我需要能够以某种方式执行从我的C程序生成这些点的代码。 那可能吗? 怎么办? 只是一个想法:我可以以某种方式embeddedC代码的MATLAB代码,以便它可以在C编译器上编译?

使用双线性插值调整图像的大小,而不是imresize

我发现了一些放大图像的方法,但没有办法缩小图像。 我目前正在使用最近邻的方法。 我怎样才能做到这一点与双线性插值,而不使用MATLAB中的imresize函数?

如何在Matlab中select一个子matrix(不是以任何特定的模式)

如何在Matlab中select一个子matrix(不是任何模式)? 例如,对于10乘10的matrix,如何select由第1行第2行,第9行与第4行,第6列交点组成的子matrix? 感谢您的任何有用的答案!

我怎样才能有效地处理类似于Matlab的blkproc(blockproc)函数块的numpy数组

我正在寻找一种有效的方法,将图像有效地分割成小区域,分别处理每个区域,然后将每个进程的结果重新组合为单个处理后的图像。 Matlab有一个叫做blkproc的工具(在Matlab的新版本中由blockproc取代)。 在一个理想的世界中,函数或类也会支持inputmatrix中各个分区之间的重叠。 在Matlab帮助中,blkproc被定义为: B = blkproc(A,[mn],[mborder nborder],好玩,…) A是你的inputmatrix, [mn]是块大小 [mborder,nborder]是你的边界区域的大小(可选) 乐趣是适用于每个块的function 我曾经在一起讨论过一个方法,但是它让我觉得很笨拙,我敢打赌还有更好的办法。 冒着我自己的尴尬风险,这是我的代码: import numpy as np def segmented_process(M, blk_size=(16,16), overlap=(0,0), fun=None): rows = [] for i in range(0, M.shape[0], blk_size[0]): cols = [] for j in range(0, M.shape[1], blk_size[1]): cols.append(fun(M[i:i+blk_size[0], j:j+blk_size[1]])) rows.append(np.concatenate(cols, axis=1)) return np.concatenate(rows, axis=0) R = np.random.rand(128,128) passthrough = lambda(x):x Rprime […]

在MATLAB中构造邻接matrix

考虑一组在N-M尺寸的网格上排列的点。 我正在试图build立邻接matrix,使得相邻的点相连。 例如,在一个带有graphics的3×3网格中: 1-2-3 | | | 4-5-6 | | | 7-8-9 我们应该有相应的邻接matrix: +—+——————————————————+ | | 1 2 3 4 5 6 7 8 9 | +—+——————————————————+ | 1 | 0 1 0 1 0 0 0 0 0 | | 2 | 1 0 1 0 1 0 0 0 0 | | 3 […]

Matlab – 多维数据的PCA分析与重构

我有一个很大的多维数据集(132维)。 我是一名初学者,执行数据挖掘,我想通过使用Matlab来应用主成分分析。 不过,我看到网上有很多function解释,但我不明白应该如何应用。 基本上,我想应用PCA并从我的数据中获得特征向量及其相应的特征值。 在这一步之后,我希望能够根据所获得的特征向量的select对我的数据进行重构。 我可以手动做到这一点,但我想知道是否有任何预定义的function可以做到这一点,因为他们应该已经被优化。 我的初始数据是这样的: size(x) = [33800 132] 。 所以基本上我有132function(尺寸)和33800数据点。 我想在这个数据集上执行PCA。 任何帮助或暗示都可以。

Matlab中的默认参数

是否有可能在Matlab中有默认参数? 例如,在这里: function wave(a,b,n,k,T,f,flag,fTrue=inline('0')) 我希望真正的解决scheme是波函数的可选参数。 如果可能的话,任何人都可以certificate正确的做法吗? 目前,我正在尝试上面发布的内容,并得到: ??? Error: File: wave.m Line: 1 Column: 37 The expression to the left of the equals sign is not a valid target for an assignment. 谢谢!

了解Matlab FFT的例子

我是新来的matlab和FFT,想了解Matlab的FFT的例子 。 现在我有两个主要问题: 1)为什么x轴(频率)在500? 我怎么知道没有更多的频率,或者只是忽略了? 2)我怎么知道频率在0到500之间? FFT不应该告诉我,在哪个极限频率是? FFT是否仅在没有频率的情况下返回振幅值? 感谢任何提示! 问题示例: 考虑以1000Hz采样的数据。 形成一个信号,其中包含振幅为1,振幅为0.7和120 Hz正弦波的50 Hz正弦曲线,并用一些零均值随机噪声损坏它: Fs = 1000; % Sampling frequency T = 1/Fs; % Sample time L = 1000; % Length of signal t = (0:L-1)*T; % Time vector % Sum of a 50 Hz sinusoid and a 120 Hz sinusoid x = 0.7*sin(2*pi*50*t) + […]

:检查失败:检查失败:hdf_blobs_ – > shape(0)== num(200 vs. 6000)

我有火车和标签数据data.mat。 (我有200个具有6000个特征的训练数据,标签是保存在data.mat中的(-1,+1))。 我正在尝试在hdf5中转换我的数据并使用以下命令运行Caffe: load data.mat hdf5write('my_data.h5', '/new_train_x', single( reshape(new_train_x,[200, 6000, 1, 1]) ) ); hdf5write('my_data.h5', '/label_train', single( reshape(label_train,[200, 1, 1, 1]) ), 'WriteMode', 'append' ); 而我的layer.prototxt(只是数据层)是: layer { type: "HDF5Data" name: "data" top: "new_train_x" # note: same name as in HDF5 top: "label_train" # hdf5_data_param { source: "/path/to/list/file.txt" batch_size: 20 } include { phase: TRAIN […]