分类目录归档:软件应用

使得windows支持HEIC文件的图片读取

苹果手机,iso系统存储的图片以HEIC结尾,windows自带的浏览器不支持浏览,需要安装一个付费插件才可以支持,网上搜索了下,有以下替代方案。

安装两个插件

www.microsoft.com/zh-cn/store/p/hevc-video-extension/9n4wgh0z6vhq

www.microsoft.com/store/productId/9PMMSR1CGPWG

安装之后就可以直接在资源管理器窗口预览HEIC图片了

顺便推荐一个HEIC转JPG的软件https://imazing.com/zh/heic/download/windows

iPhone 连接电脑复制文件, 显示“连到系统上的设备没有发挥作用” 之后就断开复制了?

设置->照片->拉到最下面。传输到MAC或PC 选择 “保留原始照片”

或者设置-> 相机->格式-> 兼容性最佳,以后的照片应该就可以了

原因是ios11以后的系统,照片采用新的格式 hivc格式,导入电脑的时候需要格式转换,导致手机端比较慢。超过200MB应该就不行,所以需要采用以上设置方法。

iPhone connects to the computer to copy files, it shows “The device connected to the system is not working”, and then the copy is disconnected?

Settings-> Photos-> Pull to the bottom. Transfer to MAC or PC Select “Keep Original Photo”

Or Settings-> Camera-> Format-> Best compatibility, future photos should be fine

The reason is that after the ios11 system, the photo adopts the new format hivc format, which needs to be converted when imported into the computer, resulting in a slower mobile phone. It should not be more than 200MB, so you need to use the above setting method.

关于Matlab 读取数据文件

最适合matlab的数据格式除了matlab的原生格式dat,我个人觉得.csv格式读取速度最快。

读写csv格式用dlmread,dlmwrite非常快。但是matlab 2019已经快放弃dlmread命令。新的替代命令是readmatrix。

readmatrix 的基本格式是

A = readmatrix(filename)
A = readmatrix(filename,opts)
A = readmatrix(___,Name,Value)
opts参数对于这个命令比较重要,在处理excel文件时比较有效。在使用该命令的时候可以采用预览模式
opts = detectImportOptions(‘airlinesmall_subset.xlsx’);
preview(‘airlinesmall_subset.xlsx’,opts)
然后进一步取数
opts.Sheet = '2007';
opts.SelectedVariableNames = [1:5]; 
opts.DataRange = '2:11';
M = readmatrix('airlinesmall_subset.xlsx',opts)
以上特别针对excel文件,对于普通txt, csv 文件,使用range 参数直接调整
data=readmatrix(filename,’range’,’2:9′);
例如此命令可以取表格中的第2到第9行数据。关于range的参数设置可以参考matlab的doc,里面有具体参数解释,非常详细。
readmatrix相比较于dlmread 最好的一点就是readmatrix可以读取含有文本的数据,这对于处理含有表头的原始测量文件非常有效。

 

如何在已经安装的matlab软件上添加模块

随着Matlab的安装包越来越大,我们在安装的时候需要稍微选择下以减小软件安装的体积。但是安装之后,如果我们需要新的模块怎么办呢。这里经过实践,可以从matlab的home菜单下的add-ons分菜单,然后搜索自己需要的模块就可以了,之后就是登陆和安装。enjoying。不用重新安装了。

新版本的ABAQUS2MATLAB发布了

用于32位Windows的Abaqus2Matlab v2.0刚刚发布!

新的32位ABAQUS2MATLAB插件可以从百度云盘下载地址:https://pan.baidu.com/s/1HdYQRvKubPBU7Z3du28rrQ

将Abaqus连接到Matlab的软件现在可以在Windows 32位平台上使用,旨在加快研究和工程的步伐。您现在可以从该软件的官方网站免费下载32位版本,包括但不限于64位版本,文档,示例和入门指南:http://www.abaqus2matlab.com/

感谢所有勤奋工作的Abaqus2Matlab社区,他们通过分享他们的经验,识别错误以及证明Abaqus2Matlab可用于工程研究的非常广泛的应用范围,为软件的各种改进做出了贡献!

其他资源
下载软件,其文档,示例和更多免费:http://abaqus2matlab.wixsite.com/abaqus2matlab/copy-of-downloads
在此处查看关于Abaqus2Matlab新闻的论坛:http://abaqus2matlab.wixsite.com/abaqus2matlab/forum/news-about-abaqus2matlab
在这里询问,讨论或者提出你的问题和/或Abaqus2Matlab的经验:http://abaqus2matlab.wixsite.com/abaqus2matlab/forum/abaqus2matlab-users-forum
查看原始公告:http://abaqus2matlab.wixsite.com/abaqus2matlab/forum/news-about-abaqus2matlab/abaqus2matlab-v2-0-for-32-bit-windows-has-just-been-released

关于Abaqus2Matlab
提出了一种新颖的软件,将Abaqus(一种复杂的有限元软件包)与Matlab(最全面的数学分析程序)连接起来。
这些众所周知的代码之间的接口不仅受益于Matlab的图像处理和集成图形绘制功能,而且还为结果后处理,统计分析和数学优化等众多可能性提供了新的机会。
Abaqus2Matlab作为源代码免费发布,目的是促进研究。

以下为新版本英文介绍

Abaqus2Matlab v2.0 for 32-bit Windows has just been released!
The software that connects Abaqus to Matlab and vice versa can now be used in Windows 32-bit platforms, aiming to accelerate the pace of research and engineering. You can now download the 32-bit version including but not limited to the 64-bit version, documentation, examples and getting started guide, all for free, from the official website of the software: http://www.abaqus2matlab.com/
Thanks to all the hard-working Abaqus2Matlab community who have contributed to various improvements of the software by sharing their experience, identifying bugs, and proving that Abaqus2Matlab can be used for a very broad scope of applications for engineering research!

Additional Resources
Download the software, its documentation, examples and more for free: http://abaqus2matlab.wixsite.com/abaqus2matlab/copy-of-downloads
Follow the forum for news about Abaqus2Matlab here: http://abaqus2matlab.wixsite.com/abaqus2matlab/forum/news-about-abaqus2matlab
Ask, discuss or suggest your problems and/or experiences with Abaqus2Matlab here: http://abaqus2matlab.wixsite.com/abaqus2matlab/forum/abaqus2matlab-users-forum
View the original announcement here: http://abaqus2matlab.wixsite.com/abaqus2matlab/forum/news-about-abaqus2matlab/abaqus2matlab-v2-0-for-32-bit-windows-has-just-been-released

About Abaqus2Matlab
A novel software is presented to connect Abaqus, a sophisticated finite element package, with Matlab, the most comprehensive program for mathematical analysis.
This interface between these well-known codes not only benefits from the image processing and the integrated graph-plotting features of Matlab, but opens up new opportunities in results post-processing, statistical analysis, and mathematical optimization, among many other possibilities.
Abaqus2Matlab is freely distributed as source code with the aim of facilitating research.

再论MATLAB的力学传感器测量信号处理,消除脉冲噪音

最近的传感器测量过程中发现,数据中出现了类似于脉冲数据(如下图所示),这对于数据处理产生了困难。

解决思路是采用MATLAB中的diff判断两个数据采集点的大小,如果两个数据采集点的大小过大的那么就删除原有数据点,同时用旁边的数据点替代。旁边数据点替代的过程中可以采用linear fitting。

下图展示了diff(y_data)后的数据图(脉冲附近的数据点之间的difference比较大)

下图展示了数据处理后的数据图,脉冲信号消除。

处理代码如下:

function new_data=flat_data(ori_data)
% the difference of the data point is fixed and is equal to 1
% then we will measure the difference of pressure between two data points
n_length=length(ori_data);
diff_y=abs(diff(ori_data));% absolute value
new_data=ori_data;% data initialization
span_end=1;
flag_start=1;
for i_data=1:n_length-1
    if diff_y(i_data)>100&&flag_start==1
        snap_start=i_data;
        span_end=n_length;
        flag_start=0;
    else
        if span_end>1&&diff_y(i_data)<100
            snap_end=i_data;
            length_span=snap_end-snap_start;
            span_y=ori_data(snap_end)-ori_data(snap_start);
            if abs(span_y)>0
                span_dif=span_y/length_span;
                new_data_rep=ori_data(snap_start):span_dif:ori_data(snap_end);% linear fitting
                new_data(snap_start:snap_end)=new_data_rep;
            else
                new_data_rep=ones(length_span+1,1)*ori_data(snap_start);
                new_data(snap_start:snap_end)=new_data_rep;
            end
            flag_start=1;
            span_end=1;
        end
    end
end

Matlab 一维中值滤波(信号处理)

matlab 中值滤波函数 medfilt1函数用于一维信号的处理。例如在动态压力测量时由于电路上的干扰会出现测量值发生突变,为了消除这种突变可以采用一维中值滤波的方法。

常用的两个命令如下。

  • y = medfilt1(x), 对于输入的向量采用3阶的一维滤波
  • y = medfilt1(x,n),对于输入的向量采用n阶的一维滤波
    效果如下图(MATLAB  help  medfilt1 参考页)。