图像处理用matlab还是python_python和matlab对比

图像处理用matlab还是python_python和matlab对比由于需要frost滤波进行滤波,一通查找到了matlab版本,以前电脑上有matlab软件,但是一直没用到,现在东西好不容易找到了,就搜了下相关教程,整理一个博客。感觉matlab语言和python语言很多类似操作,所以敲起代码来有种“春风得意马蹄疾”的感觉,废话不多说,上代码。下面代码matlab入门没啥问题…算法下载地址如下(如果不需要可以忽略下载,用matlab中自带的算法):differe…

大家好,又见面了,我是你们的朋友全栈君。如果您正在找激活码,请点击查看最新教程,关注关注公众号 “全栈程序员社区” 获取激活教程,可能之前旧版本教程已经失效.最新Idea2022.1教程亲测有效,一键激活。

Jetbrains全系列IDE稳定放心使用

由于需要frost滤波进行滤波,一通查找到了matlab版本,以前电脑上有matlab软件,但是一直没用到,现在东西好不容易找到了,就搜了下相关教程,整理一个博客。感觉matlab语言和python语言很多类似操作,所以敲起代码来有种“春风得意马蹄疾”的感觉,废话不多说,上代码。下面代码matlab入门没啥问题…

算法下载地址如下(如果不需要可以忽略下载,用matlab中自带的算法):

different filters:

-Mean filter.

-Frost filter.

-Modified frost filter(added thresholds).

-Lee filter(Using Masks, ENL ect).

下载地址:

https://download.csdn.net/download/weixin_42727069/12322147

1-frost滤波使用

% 1-frost滤波使用*************************************************

clear all;

close all;

I=im2double(imread(‘F:\datas\opencvDemoData\560.tiff’));

%%I2=im2double(I)%%转换为double类型,避免滤波出错

%%BW = dither(I);%通过抖动转换为二值图像来增强图像

BW = FrostFilter(I, 7,2.2);%%(I, 4,2.2)% frost滤波使用

subplot(121);

imshow(I);

subplot(122);

imshow(BW)

2-获取图像信息

//2-获取图像信息***********************************

clear all;

close all;

%方法一:

info = imfinfo(‘F:\datas\opencvDemoData\560.tiff’,’tiff’)%直接在命令行显示图片信息

%方法二:

imtool(‘F:\datas\opencvDemoData\560.tiff’)%弹出窗口显示图片信息

3-改变图片格式

%%3-改变图片格式***************************************

clear all;

close all;

RGB = imread(‘F:\datas\opencvDemoData\ren.jpg’,’jpg’);

imwrite(RGB,’F:\datas\opencvDemoData\ren.png’,’png’);

tupian = imread(‘F:\datas\opencvDemoData\ren.png’);

figure;

imshow(tupian)

4-读取图片中的某一帧

%%4-读取图片中的某一帧*********************************

clear all;

close all;

I1 = imread(‘mri.tif’,5);%读取第5帧,mri.tif为matlab自带的样例图片

I2 = imread(‘mri.tif’,25);%读取第25帧

figure;

subplot(121);

imshow(I1);

subplot(122);

imshow(I2);

set(gcf,’position’,[200,200,500,300]);

%% which mri.tif %%查看mri.tif图像位置

5-同时显示多帧图像

%%5-同时显示多帧图像***************

clear all;

close all;

mri=uint8(zeros(128,128,1,25));

for i = 1:25 %25帧

[mri(:,:,:,i),map] = imread(‘mri.tif’,i);

end

montage(mri,map);%同时显示多帧图像

6-将多帧图像转换为电影动图

%%6-将多帧图像转换为电影动图*******

clear all;

close all;

mri = uint8(zeros(128,128,1,25));

for i =1:25

[mri(:,:,:,i),map] = imread(‘mri.tif’,i);

end

mov = immovie(mri,map);

implay(mov);

7-图像相加

%%7-图像相加,如果大于255 就设置为255*******

clear all;

close all;

I = imread(‘rice.png’);

J=imread(‘cameraman.tif’);

K = imadd(I,J,’uint16′);

imshow(K,[]);

set(gcf,’position’,[400,400,600,600]);

8-图像相减

%%8-图像相减 ,小于0则设置为0,减去一个常数颜色更深

clear all;

close all;

I = imread(‘cameraman.tif’);

J = imsubtract(I,90);

imshow(J);

9-图像相乘

%%9-图像相乘

clear all;

close all;

I = imread(‘cameraman.tif’,’tif’);

J = immultiply(I,0.6);%%乘以小于1的数,图片变暗

subplot(121);

imshow(I);

subplot(122);

imshow(J);

10-图像的除

%%10-图像的除

clear all;

close all;

X = uint8([222,50,21;56,77,89]);

Y = uint8([66,66,66;66,66,66]);

Z = imdivide(X,Y)

11-两幅图像的绝对差异

%%11-两幅图像的绝对差异

clear all;

close all;

I = imread(‘cameraman.tif’);

J = uint8(filter2(fspecial(‘gaussian’),I));%对图像进行滤波

K = imabsdiff(I,J);%获取滤波图像和之前图像的差异

subplot(131);

imshow(I);

subplot(132);

imshow(K);

subplot(133);

imshow(K,[]);%加[]是为了显示清晰

原文链接:https://blog.csdn.net/weixin_42727069/article/details/105456619

版权声明:本文内容由互联网用户自发贡献,该文观点仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请联系我们举报,一经查实,本站将立刻删除。

发布者:全栈程序员-站长,转载请注明出处:https://javaforall.net/186092.html原文链接:https://javaforall.net

(0)
全栈程序员-站长的头像全栈程序员-站长


相关推荐

  • 读取QQ ClientKey C++版本[通俗易懂]

    读取QQ ClientKey C++版本[通俗易懂]不需要注入,读取QQClientKeyC++版本#include”stdafx.h”#include<string>#include<windows.h>#include<iostream>#include<WinInet.h>#pragmacomment(lib,”wininet.lib”)usingnamespaces…

    2025年8月15日
    3
  • Yii2 Call to a member function validateCsrfToken() on string

    Yii2 Call to a member function validateCsrfToken() on string

    2022年2月18日
    37
  • sql调用存储过程exec用法_sqlserver存储过程执行日志

    sql调用存储过程exec用法_sqlserver存储过程执行日志一、【存储过程】存储过程的T-SQL语句编译以后可多次执行,由于T-SQL语句不需要重新编译,所以执行存储过程可以 提高性能。存储过程具有以下特点:• 存储过程已在服务器上存储• 存储过程具有安全特性• 存储过程允许模块化程序设计• 存储过程可以减少网络通信流量• 存储过程可以提高运行速度 存储过程分为用户存储过程、系统存储过程和扩展存储过程。存储过程Procedure是一组为了完成…

    2022年8月18日
    35
  • 微信公众号开发——2、微信网页开发

    微信公众号开发——2、微信网页开发第一部分、为公众号菜单嵌入网页一、关键参考文档 微信JS-SDK说明文档 。二、编辑模式嵌入网页在公众号平台下,自定义菜单,添加菜单,并选择菜单内容跳转到指定页面地址即可(需认证后方可添加页面地址,个人账号暂不支持认证)。三、开发者模式嵌入网页(通过微信公众平台接口调试工具动态生成菜单)1、基础支持中,通过appid和secret获取access_token,该值有效期为7

    2022年5月26日
    49
  • 我用Java+Redis+ES+Kibana技术对数百万知乎用户进行了数据分析,得到了这些…

    点击上方“全栈程序员社区”,星标公众号 重磅干货,第一时间送达 作者:_artoria_ http://tinyurl.com/quscxyl 1. 前言 我是一个真正的知乎小白。…

    2021年6月25日
    91
  • BN层代码实现_无代码

    BN层代码实现_无代码BatchNormalization开发环境项目代码结构生成虚拟数据程序神经网络构建带初始化模型的神经网络构建带BN的FC网络和不带BN的FC网络对比不同初始化方式带BN的网络模型对比开发环境python–3.7torch–1.8+cu101torchsummarytorchvision–0.6.1+cu101PILnumpyopencv-pythonpillow项目代码结构src文件夹存储了带有BN的FC训练文件、基于初始化的带BN的FC训练文件以及BN在训练阶段的操作。t

    2022年10月14日
    2

发表回复

您的邮箱地址不会被公开。 必填项已用 * 标注

关注全栈程序员社区公众号