【发布时间】:2012-11-19 16:56:29
【问题描述】:
我现在不得不使用 MATLAB 进行图像处理。但我对 MATLAB 几乎一无所知,这可能是我唯一一次使用 MATLAB(我希望如此)。所以我想得到你的帮助。这是我到目前为止所做的:
我成功地从 .trk 文件中读取了数据并解析了它的标题和正文。现在我必须应用插值。在此之前,这里是关于我的变量的信息:
我有tracks <1x110470 struct>。在轨道结构下,我有两个向量。它们是nPoints 和matrix。 nPoints 包含向量matrix 中存在的点数。
例如,如果我选择轨道(1,95607),nPoints=3 和 matrix={(1.2323,1.4441,2.345),(2.333,4.555,4.123),(1.22,2.33,3.44)}
nPoints 不是一个固定的数字。它甚至可以是 100 等。但矩阵是一个 nPoints*3 向量。我总是有 3 个坐标。
现在我要做的是一个基本的插值,比如取一半的边界并添加新的点。让我假设,在轨道(1,2)下我有三个点 a,b,c,d 然后我需要添加点 (a+b)/2 和 (b+c)/2 和 (c+d)/ 2.
首先,我什至无法编写一个成功的算法来做到这一点。请你帮助我好吗? (插值将应用于所有轨道。但我不会在轨道(1,1)和轨道(1,2)之间进行任何插值,我只会将它应用于轨道内的点,而且轨道中的点是未排序。)
其次,我想知道的是:是否有可能拥有一种进行参数化插值的算法。我的意思是:
假设我的观点是:a,b
如果参数=1,那么我只想添加 (a+b)/2
如果参数=2,那么除了参数=1
.. .. ..
我希望它像那样迭代。有可能吗?
我已经编码了几个小时,现在我开始感到筋疲力尽。我将非常感谢您的帮助。
亲切的问候, 艾玛迪斯
【问题讨论】:
-
你看过
help cell -
尽量简明扼要一点,你会有更多机会得到一个好的答案——请注意,人们正在从列表中挑选答案..(只关注你想问的问题,你的问题。)
-
@BarnabasSzabolcs 对我来说最重要的是第二个问题:参数化插值。你有什么想法吗?
-
@Amadeus 关键是,你有一个插值的东西,你已经得到了一个和你的问题一样模糊的答案。一旦你明确了你真正想要实现的目标,我认为你可以通过一些基本的矩阵运算得到一个简单的解决方案。然后我(和许多其他人)可以很容易地帮助解决这个“简单的解决方案”。
-
@BarnabasSzabolcs 我正在尝试创建大脑的神经图,向量
matrix中的那些点是神经元轨迹通过的点。但是,当我将它们可视化时,我注意到它们不够浓缩。有时,在特定的神经元轨道上会发生断开连接。因此,我决定使用插值来获得更好的可视化效果。但是我没有决定要进行多少插值。因此,如果可以的话,我想让这个过程参数化。你可以帮帮我吗? (如果我的答案仍然不清楚,我很抱歉。)
标签: matlab image-processing interpolation