MATLAB 板


LINE

※ 引述《YoursEver (银英传出webgame!?)》之铭言: : 如题, : 要计算4D Hessian, : 请问应如何将所有的偏微分项排入cell array? : 以2D举例, : (1) H = [ partial_xx, partial_xy; partial_yx, partial_yy ]; : (2) 假设对一张 M-by-N 的影像做 Hessian, : 这时候会得到 partial_xx, partial_xy; partial_yx, partial_yy 等, : 共 4 个大小为 M-by_N 的矩阵. : (3) 我希望建立一个 M-by-N 的 cell array, : 每一个cell内含一个 2*2 的矩阵: : [ partial_xx(i,j), partial_xy(i,j); : partial_yx(i,j), partial_yy(i,j)] : (i,j)对应到原本影像内的第(i,j)个pixel; : == : 请问该怎麽写才省时省力? : 目前必须要排进cell array才能call cellfun处理後续. : 虽然可以靠回圈硬排, : 因为实际的4D data量太大,回圈会额外耗费时间. : 谢谢. 我不知道你4D是什麽意思,以你2D为例: M = 400; N = 300; partial_xx = rand(M, N); partial_xy = rand(M, N); partial_yx = rand(M, N); partial_yy = rand(M, N); tic H = cat(3, partial_xx, partial_yx, partial_xy, partial_yy); H = cellfun(@(x) reshape(squeeze(x), 2, 2), num2cell(H, 3), 'uni', false); toc % Elapsed time is 2.287873 seconds. % note: 注意cat的顺序,因为MATLAB是column-major,排的时候要排对 tic H2 = arrayfun(@(x11, x12, x21, x22) [x11, x12; x21, x22], partial_xx, ... partial_xy, partial_yx, partial_yy, 'uni', false); toc % Elapsed time is 1.355389 seconds. isequal(H, H2) % true --



※ 发信站: 批踢踢实业坊(ptt.cc), 来自: 140.109.73.190
※ 文章网址: https://webptt.com/cn.aspx?n=bbs/MATLAB/M.1445489551.A.8B0.html ※ 编辑: celestialgod (140.109.73.190), 10/22/2015 13:45:08
1F:推 YoursEver: 谢谢. 实际case是要看看某个f(x,y,u,v)的Hessian的特性 10/22 14:07
2F:→ YoursEver: 光是想到还要每个voxel看eigenvalue就觉得很恶心. 10/22 14:14
我也要做一个很复杂的东西 也是四个维度要看eigen vector....更可怕~"~ 偷偷GOOGLE你的IP 是我斜对面的所 - 资讯所的吧? 有机会可以认识一下XDD 你的有点像是听起来像是fMRI资料... 脑袋+时间 四维了
3F:→ sunev: num2cell也是跑回圈.... 10/22 16:23
4F:推 sunev: H3=squeeze(num2cell(permute(reshape(cat(3,partial_xx, 10/22 16:28
5F:→ sunev: partial_yx,partial_xy,partial_yy),[M N 2 2]),[3 4 1 2]) 10/22 16:28
6F:→ sunev: ,[1 2])) 10/22 16:28
7F:推 sunev: UniformOutput 是 false 时似乎很耗时 10/22 16:50
恩阿,唉,最近越来越不满意MATLAB,可是他现在是主要工具,我好想换R....XDD 最近遇到读进来的资料是chracter跟numeric参杂的资料 我也不可能手动去做identification的动作,只能用慢慢的readtable做 然後table的varfun根本就是回圈,很慢慢慢慢的回圈~~~
8F:推 sunev: R有比较快吗?当然他是免费的.... 10/22 17:25
9F:→ sunev: 你的问题是卡在IO吗? 10/22 17:25
恩,主要是IO吧QQ,进来之後都可以用struct来做 我IO後来改成自己硬干之後 有好一点 不过还是没办法47MB在很快时间读完 不过在处理字串上MATLAB还是慢的夸张 regexp(cell_of_strings, 'some format', 'tokens') 要有点久= =
10F:推 sunev: 用linux内建的指令做一些前处理後再用matlab 读? 10/22 23:44
因为老师要从windows到linux, mac都要能用,我连c++都不敢写...... 所以更不用说sh了XDD 乖乖用MATLAB做IO 其实能用其他工具 我就用R干了= =... 何必还去用SH怎麽处理资料
11F:推 sunev: 用matlab 就叫跨平台? 那不就表示三个OS版本都要买.... 10/23 00:11
我们老师就是要确定在三个平台的matlab都能跑 这样说比较合理XD 中研院有钱阿 都有买= = 老师自己用MAC 之後跑模拟用linux 我自己测试用windows XDD 我是可以去用linux 可是MAC也不能去做sh= =
12F:→ sunev: 话说windows也是有MSYS可用 10/23 00:13
就这样吧 我正在说服我们老师改用R XDD 他用R 我用Rcpp 系统是什麽应该都没关系了(摊手 MEX编译有时候跨个平台都会出事(叹气 还要MATLAB版本要比较旧....一堆麻烦事
13F:推 sunev: MAC现在的OSX也都有常用的linux shell script指令吧? 10/23 00:17
呜呜呜呜 你不要把我推向一个大坑
14F:推 sunev: 正想说你有没有用到mex编译,这方面相容性不好弄...... 10/23 00:23
我自己在MATLAB 2015b编了一个MEX 丢去2014b就不能用了 我只能在安装一个2014b编译
15F:→ sunev: 就你的情形我猜简单的grep cut tr组合就可以了 10/23 00:25
我的东西大概长这样: select, varName1, varName2, ..., varName56 from XXX where YYYZZZ.... go ,character, number, number, number, ... ....(重复上一行格式大概有287列) 接着,再重复上面的那四行大概100~300次(depends) 是一个档案 共有400个这样的档案要处理,我不确定要怎样用SH做
16F:推 sunev: 印象中mex是编译时的环境有点龟毛,编译後的档案倒是没这麽 10/23 00:39
17F:→ sunev: 麻烦,只是一样三平台都要分开编译就是了 10/23 00:39
18F:推 sunev: 所以你要抓的是 character 後面的number吗? 10/23 00:44
都要抓,所以很麻烦,如果只抓後面用csvread直接解决 对了,有时候,会不一样多,所以若直接用,做切割 切出来会不一样长还要排除这种情况 我现在做法是直接全部读进来 有包含select, go都删掉 然後用strsplit去切每一列,去掉长度0的cell跟过长的 最後把数字部分变成矩阵,剩下character用成cell 然後在制作对应表把character转成数字 并到矩阵去 最後把对应表跟character部分都存下来 ※ 编辑: celestialgod (180.218.154.163), 10/23/2015 00:55:38







like.gif 您可能会有兴趣的文章
icon.png[问题/行为] 猫晚上进房间会不会有憋尿问题
icon.pngRe: [闲聊] 选了错误的女孩成为魔法少女 XDDDDDDDDDD
icon.png[正妹] 瑞典 一张
icon.png[心得] EMS高领长版毛衣.墨小楼MC1002
icon.png[分享] 丹龙隔热纸GE55+33+22
icon.png[问题] 清洗洗衣机
icon.png[寻物] 窗台下的空间
icon.png[闲聊] 双极の女神1 木魔爵
icon.png[售车] 新竹 1997 march 1297cc 白色 四门
icon.png[讨论] 能从照片感受到摄影者心情吗
icon.png[狂贺] 贺贺贺贺 贺!岛村卯月!总选举NO.1
icon.png[难过] 羡慕白皮肤的女生
icon.png阅读文章
icon.png[黑特]
icon.png[问题] SBK S1安装於安全帽位置
icon.png[分享] 旧woo100绝版开箱!!
icon.pngRe: [无言] 关於小包卫生纸
icon.png[开箱] E5-2683V3 RX480Strix 快睿C1 简单测试
icon.png[心得] 苍の海贼龙 地狱 执行者16PT
icon.png[售车] 1999年Virage iO 1.8EXi
icon.png[心得] 挑战33 LV10 狮子座pt solo
icon.png[闲聊] 手把手教你不被桶之新手主购教学
icon.png[分享] Civic Type R 量产版官方照无预警流出
icon.png[售车] Golf 4 2.0 银色 自排
icon.png[出售] Graco提篮汽座(有底座)2000元诚可议
icon.png[问题] 请问补牙材质掉了还能再补吗?(台中半年内
icon.png[问题] 44th 单曲 生写竟然都给重复的啊啊!
icon.png[心得] 华南红卡/icash 核卡
icon.png[问题] 拔牙矫正这样正常吗
icon.png[赠送] 老莫高业 初业 102年版
icon.png[情报] 三大行动支付 本季掀战火
icon.png[宝宝] 博客来Amos水蜡笔5/1特价五折
icon.pngRe: [心得] 新鲜人一些面试分享
icon.png[心得] 苍の海贼龙 地狱 麒麟25PT
icon.pngRe: [闲聊] (君の名は。雷慎入) 君名二创漫画翻译
icon.pngRe: [闲聊] OGN中场影片:失踪人口局 (英文字幕)
icon.png[问题] 台湾大哥大4G讯号差
icon.png[出售] [全国]全新千寻侘草LED灯, 水草

请输入看板名称,例如:Tech_Job站内搜寻

TOP