精华内容
下载资源
问答
  • 三维图像信息处理一直是图像视频处理领域的热点和难点,目前国内外成熟的三维信息处理系统不多,已有的系统主要依赖高性能通用PC完成图像采集、预处理、重建、构型等囊括底层和高层的处理工作。三维图像处理数据量...
  • 三维图像数据

    2018-12-12 22:34:00
    浅谈二维和三维图像数据 - wozhengtao的博客 - CSDN博客 https://blog.csdn.net/wozhengtao/article/details/51430398 转载自-三维点云数据集 https://www.douban.com/note/632704028/ 欧特克的研究——数字...

     

     

     

    【资料】

    浅谈二维和三维图像数据 - wozhengtao的博客 - CSDN博客 https://blog.csdn.net/wozhengtao/article/details/51430398

    转载自-三维点云数据集 https://www.douban.com/note/632704028/

     

    模型

    Heightmaps

    面扫描

    卷数据(MRI和类似)

    对象检测

    Misc /品种

    转载于:https://www.cnblogs.com/wxl845235800/p/10111480.html

    展开全文
  • 用于matlab寻找三维图像或二维矩阵的波峰,详细使用方法可在 https://github.com/JamesHoi/Matlab/tree/master/IMMC/Findpeaks 查看。此资源免费下载,我的更多资源可在 ...
  • 三维图像切片提取

    千次阅读 2018-03-12 17:27:04
    三维图像切片提取切片是指三维图像中的一个切面对应的图像。切面可以是过图像内部一点且平行于XY、YZ、XZ平面的平面,也可以是任意的过三维图像内部一点任意方向的平面。通过提取切片可以方便的浏览和分析图像...
    

    三维图像切片提取

    切片是指三维图像中的一个切面对应的图像。切面可以是过图像内部一点且平行于XY、YZ、XZ平面的平面,也可以是任意的过三维图像内部一点任意方向的平面。通过提取切片可以方便的浏览和分析图像内部组织结构,是医学图像浏览软件中的一个重要的功能。在VTK中vtkImageReslice类实现图像切片提取功能。

    #include <vtkSmartPointer.h>  
    #include <vtkImageReader2.h>  
    #include <vtkMatrix4x4.h>  
    #include <vtkImageReslice.h>  
    #include <vtkLookupTable.h>  
    #include <vtkImageMapToColors.h>  
    #include <vtkImageActor.h>  
    #include <vtkRenderer.h>  
    #include <vtkRenderWindow.h>  
    #include <vtkRenderWindowInteractor.h>  
    #include <vtkInteractorStyleImage.h>  
    #include <vtkCommand.h>  
    #include <vtkImageData.h>  
    #include <vtkMetaImageReader.h>  
    #include <vtkImageCast.h>  
    
    
    #include "vtkAutoInit.h"  
    VTK_MODULE_INIT(vtkRenderingOpenGL2);
    VTK_MODULE_INIT(vtkInteractionStyle);
    
    
    class vtkImageInteractionCallback : public vtkCommand
    {
    public:
    	static vtkImageInteractionCallback *New()
    	{
    		return new vtkImageInteractionCallback;
    	}
    
    	vtkImageInteractionCallback()
    	{
    		this->Slicing = 0;
    		this->ImageReslice = 0;
    		this->Interactor = 0;
    	}
    
    	void SetImageReslice(vtkImageReslice *reslice)
    	{
    		this->ImageReslice = reslice;
    	}
    
    	void SetImageMapToColors(vtkImageMapToColors *mapToColors)
    	{
    		this->mapToColors = mapToColors;
    	}
    
    	vtkImageReslice *GetImageReslice()
    	{
    		return this->ImageReslice;
    	}
    
    	void SetInteractor(vtkRenderWindowInteractor *interactor)
    	{
    		this->Interactor = interactor;
    	}
    
    	vtkRenderWindowInteractor *GetInteractor()
    	{
    		return this->Interactor;
    	}
    
    	virtual void Execute(vtkObject *, unsigned long event, void *)
    	{
    		vtkRenderWindowInteractor *interactor = this->GetInteractor();
    
    		int lastPos[2];
    		interactor->GetLastEventPosition(lastPos);
    		int currPos[2];
    		interactor->GetEventPosition(currPos);
    
    		if (event == vtkCommand::LeftButtonPressEvent)
    		{
    			this->Slicing = 1;
    		}
    		else if (event == vtkCommand::LeftButtonReleaseEvent)
    		{
    			this->Slicing = 0;
    		}
    		else if (event == vtkCommand::MouseMoveEvent)
    		{
    			if (this->Slicing)
    			{
    				vtkImageReslice *reslice = this->ImageReslice;
    
    				// Increment slice position by deltaY of mouse  
    				int deltaY = lastPos[1] - currPos[1];
    
    				reslice->Update();
    				double sliceSpacing = reslice->GetOutput()->GetSpacing()[2];
    				vtkMatrix4x4 *matrix = reslice->GetResliceAxes();
    				// move the center point that we are slicing through  
    				double point[4];
    				double center[4];
    				point[0] = 0.0;
    				point[1] = 0.0;
    				point[2] = sliceSpacing * deltaY;
    				point[3] = 1.0;
    				matrix->MultiplyPoint(point, center);
    				matrix->SetElement(0, 3, center[0]);
    				matrix->SetElement(1, 3, center[1]);
    				matrix->SetElement(2, 3, center[2]);
    				mapToColors->Update();
    				interactor->Render();
    			}
    			else
    			{
    				vtkInteractorStyle *style = vtkInteractorStyle::SafeDownCast(
    					interactor->GetInteractorStyle());
    				if (style)
    				{
    					style->OnMouseMove();
    				}
    			}
    		}
    	}
    
    private:
    	int Slicing;
    	vtkImageReslice *ImageReslice;
    	vtkRenderWindowInteractor *Interactor;
    	vtkImageMapToColors *mapToColors;
    };
    
    int main()
    {
    	vtkSmartPointer<vtkMetaImageReader> reader =
    		vtkSmartPointer<vtkMetaImageReader>::New();
    	reader->SetFileName("brain.mhd");
    	reader->Update();
    
    	int extent[6];
    	double spacing[3];
    	double origin[3];
    
    	reader->GetOutput()->GetExtent(extent);
    	reader->GetOutput()->GetSpacing(spacing);
    	reader->GetOutput()->GetOrigin(origin);
    
    	double center[3];
    	center[0] = origin[0] + spacing[0] * 0.5 * (extent[0] + extent[1]);
    	center[1] = origin[1] + spacing[1] * 0.5 * (extent[2] + extent[3]);
    	center[2] = origin[2] + spacing[2] * 0.5 * (extent[4] + extent[5]);
    
    	static double axialElements[16] = {
    		1, 0, 0, 0,
    		0, 1, 0, 0,
    		0, 0, 1, 0,
    		0, 0, 0, 1
    	};
    
    	vtkSmartPointer<vtkMatrix4x4> resliceAxes =
    		vtkSmartPointer<vtkMatrix4x4>::New();
    	resliceAxes->DeepCopy(axialElements);
    
    	resliceAxes->SetElement(0, 3, center[0]);
    	resliceAxes->SetElement(1, 3, center[1]);
    	resliceAxes->SetElement(2, 3, center[2]);
    
    	vtkSmartPointer<vtkImageReslice> reslice =
    		vtkSmartPointer<vtkImageReslice>::New();
    	reslice->SetInputConnection(reader->GetOutputPort());
    	reslice->SetOutputDimensionality(2);
    	reslice->SetResliceAxes(resliceAxes);
    	reslice->SetInterpolationModeToLinear();
    
    	vtkSmartPointer<vtkLookupTable> colorTable =
    		vtkSmartPointer<vtkLookupTable>::New();
    	colorTable->SetRange(0, 1000);
    	colorTable->SetValueRange(0.0, 1.0);
    	colorTable->SetSaturationRange(0.0, 0.0);
    	colorTable->SetRampToLinear();
    	colorTable->Build();
    
    	vtkSmartPointer<vtkImageMapToColors> colorMap =
    		vtkSmartPointer<vtkImageMapToColors>::New();
    	colorMap->SetLookupTable(colorTable);
    	colorMap->SetInputConnection(reslice->GetOutputPort());
    	colorMap->Update();
    
    	vtkSmartPointer<vtkImageActor> imgActor =
    		vtkSmartPointer<vtkImageActor>::New();
    	imgActor->SetInputData(colorMap->GetOutput());
    
    	vtkSmartPointer<vtkRenderer> renderer =
    		vtkSmartPointer<vtkRenderer>::New();
    	renderer->AddActor(imgActor);
    	renderer->SetBackground(1, 1, 1);
    
    	vtkSmartPointer<vtkRenderWindow> renderWindow =
    		vtkSmartPointer<vtkRenderWindow>::New();
    	renderWindow->SetSize(500, 500);
    	renderWindow->AddRenderer(renderer);
    
    	vtkSmartPointer<vtkRenderWindowInteractor> renderWindowInteractor =
    		vtkSmartPointer<vtkRenderWindowInteractor>::New();
    	vtkSmartPointer<vtkInteractorStyleImage> imagestyle =
    		vtkSmartPointer<vtkInteractorStyleImage>::New();
    
    	renderWindowInteractor->SetInteractorStyle(imagestyle);
    	renderWindowInteractor->SetRenderWindow(renderWindow);
    	renderWindowInteractor->Initialize();
    
    	vtkSmartPointer<vtkImageInteractionCallback> callback =
    		vtkSmartPointer<vtkImageInteractionCallback>::New();
    	callback->SetImageReslice(reslice);
    	callback->SetInteractor(renderWindowInteractor);
    	callback->SetImageMapToColors(colorMap);
    
    	imagestyle->AddObserver(vtkCommand::MouseMoveEvent, callback);
    	imagestyle->AddObserver(vtkCommand::LeftButtonPressEvent, callback);
    	imagestyle->AddObserver(vtkCommand::LeftButtonReleaseEvent, callback);
    
    	renderWindowInteractor->Start();
    	return EXIT_SUCCESS;
    }

    1. 先通过vtkMetaImageReader读取一副三维图像,获取图像范围、原点和像素间隔,由这三个参数可以计算图像的中心位置。
    2. 接下来定义了切面的变换矩阵axialElements,该矩阵的前三列分别表示X、Y和Z方向矢量,第四列为切面坐标系原点。通过修改切面坐标系原点,可以得到不同位置的切面图像。
    3. 然后将读取的图像作为vtkImageReslice的输入,通过函数SetResliceAxes()设置变换矩阵resliceAxis。

    注意:运行vtk官方程序的代码时候,出现不能读取mhd文件的问题,把同名的.raw文件放到相同路径下就可以了

    展开全文
  • python (matplotlib)画三维图像

    万次阅读 2019-08-24 17:09:31
    关于三维图像的内容很多博友已经写了 推荐:三维绘图,画三维图,3d图-英文版 上面写的都非常详细,很推荐,特别是英文版那个,基于此,只给我写的一个例子 三维图 画出2维不相关高斯分布的3维图,即下面公式中n...


    关于三维图像的内容很多博友已经写了
    推荐:三维绘图画三维图3d图-英文版中文版三维图
    上面写的都非常详细,很推荐,特别是英文版和中文版三维图那个,基于此,只给我写的一个例子

    1 三维图

    f(x,y)=x2+y2f(x,y)=x^2+y^2的三维图
    在这里插入图片描述

    import numpy as np
    import matplotlib.pyplot as plt
    from mpl_toolkits.mplot3d import Axes3D
    
    x = np.arange(-10,10,0.2)
    y = np.arange(-10,10,0.2)
    f_x_y=np.power(x,2)+np.power(y,2)
    fig = plt.figure()
    ax = plt.gca(projection='3d')
    ax.plot(x,y,f_x_y)
    

    画出2维不相关高斯分布的3维图,即下面公式中n=2的情况
    在这里插入图片描述
    在这里插入图片描述

    import numpy as np
    import matplotlib.pyplot as plt
    import mpl_toolkits.axisartist as axisartist
    from mpl_toolkits.mplot3d import Axes3D #画三维图不可少
    from matplotlib import cm  #cm 是colormap的简写
    
    # 1_dimension gaussian function
    def gaussian(x,mu,sigma):
        f_x = 1/(sigma*np.sqrt(2*np.pi))*np.exp(-np.power(x-mu, 2.)/(2*np.power(sigma,2.)))
        return(f_x)
    
    # 2_dimension gaussian function
    def gaussian_2(x,y,mu_x,mu_y,sigma_x,sigma_y):
        f_x_y = 1/(sigma_x*sigma_y*(np.sqrt(2*np.pi))**2)*np.exp(-np.power\
                  (x-mu_x, 2.)/(2*np.power(sigma_x,2.))-np.power(y-mu_y, 2.)/\
                  (2*np.power(sigma_y,2.)))
        return(f_x_y)
    
    #设置2维表格
    x_values = np.linspace(-5,5,2000)
    y_values = np.linspace(-5,5,2000)
    X,Y = np.meshgrid(x_values,y_values)
    #高斯函数
    mu_x,mu_y,sigma_x,sigma_y = 0,0,0.8,0.8
    F_x_y = gaussian_2(X,Y,mu_x,mu_y,sigma_x,sigma_y)
    #显示三维图
    fig = plt.figure()
    ax = plt.gca(projection='3d')
    ax.plot_surface(X,Y,F_x_y,cmap='jet')
    # 显示等高线图
    #ax.contour3D(X,Y,F_x_y,50,cmap='jet')
    
    

    2 三维等高线

    将上面等高线打开,三维图注释掉

    #ax.plot_surface(X,Y,F_x_y,cmap='jet')
    # 显示等高线图
    ax.contour3D(X,Y,F_x_y,50,cmap='jet')
    

    在这里插入图片描述

    3 二维等高线

    将上面的图截取截面就是2维平面,是一个个圆形
    在这里插入图片描述

    import numpy as np
    import matplotlib.pyplot as plt
    import mpl_toolkits.axisartist as axisartist
    from mpl_toolkits.mplot3d import Axes3D #画三维图不可少
    from matplotlib import cm  #cm 是colormap的简写
    
    #定义坐标轴函数
    def setup_axes(fig, rect):
        ax = axisartist.Subplot(fig, rect)
        fig.add_axes(ax)
    
        ax.set_ylim(-4, 4)
        #自定义刻度
    #    ax.set_yticks([-10, 0,9])
        ax.set_xlim(-4,4)
        ax.axis[:].set_visible(False)
    
    	#第2条线,即y轴,经过x=0的点
        ax.axis["y"] = ax.new_floating_axis(1, 0)
        ax.axis["y"].set_axisline_style("-|>", size=1.5)
    #    第一条线,x轴,经过y=0的点
        ax.axis["x"] = ax.new_floating_axis(0, 0)
        ax.axis["x"].set_axisline_style("-|>", size=1.5)
    
        return(ax)
    # 1_dimension gaussian function
    def gaussian(x,mu,sigma):
        f_x = 1/(sigma*np.sqrt(2*np.pi))*np.exp(-np.power(x-mu, 2.)/(2*np.power(sigma,2.)))
        return(f_x)
    
    # 2_dimension gaussian function
    def gaussian_2(x,y,mu_x,mu_y,sigma_x,sigma_y):
        f_x_y = 1/(sigma_x*sigma_y*(np.sqrt(2*np.pi))**2)*np.exp(-np.power\
                  (x-mu_x, 2.)/(2*np.power(sigma_x,2.))-np.power(y-mu_y, 2.)/\
                  (2*np.power(sigma_y,2.)))
        return(f_x_y)
    
    #设置画布
    fig = plt.figure(figsize=(8, 8)) #建议可以直接plt.figure()不定义大小
    ax1 = setup_axes(fig, 111)
    ax1.axis["x"].set_axis_direction("bottom")
    ax1.axis['y'].set_axis_direction('right')
    #在已经定义好的画布上加入高斯函数
    x_values = np.linspace(-5,5,2000)
    y_values = np.linspace(-5,5,2000)
    X,Y = np.meshgrid(x_values,y_values)
    mu_x,mu_y,sigma_x,sigma_y = 0,0,0.8,0.8
    F_x_y = gaussian_2(X,Y,mu_x,mu_y,sigma_x,sigma_y)
    #显示三维图
    #fig = plt.figure()
    #ax = plt.gca(projection='3d')
    #ax.plot_surface(X,Y,F_x_y,cmap='jet')
    # 显示3d等高线图
    #ax.contour3D(X,Y,F_x_y,50,cmap='jet')
    # 显示2d等高线图,画8条线
    plt.contour(X,Y,F_x_y,8)
    

    4 三维表面图上画曲线

    fig = plt.figure()
    ax = fig.gca(projection='3d')
    temp_test = np.squeeze(temp[:,0,:,:])
    Lat,Lon = np.meshgrid(lat,lon)
    # Temp = np.zeros((lat.size,lon.size))
    Temp = temp_test[0]    #first hour
    surf = ax.plot_surface(Lat,Lon,Temp) 
    fig.colorbar=(surf)  #画表面图
    ax.plot(lat_new, lon_new, t_interp,linewidth=10,color='r')  #画曲线
    
    plt.show()
    

    由于我的值结果范围太小,看不出来,这条曲线是在表面上画一个环
    在这里插入图片描述
    在这里插入图片描述

    5 三维曲线投影到坐标轴

    由于三维曲面投影到坐标轴已经有了答案,在一开始我给的链接或者官网都有,如下:
    在这里插入图片描述
    (代码可以点开始给的链接进入查看)
    但是三维线曲线的投影还没有给,所以这里通过查找一番之后总结如下(参考python,matlab)
    以下我使用的是python

    import matplotlib.pyplot as plt
    fig = plt.figure()
    ax = fig.gca(projection='3d')
    #输入经纬度和海拔值(也就是x,y,z)
    ax.plot(lat_new, lon_new, temp_list[layer], linewidth=10, color='r')
    
    plt.show()
    

    在这里插入图片描述
    现在要将这个图投影到x-z坐标面上

    fig = plt.figure()
    ax = fig.gca(projection='3d')
    ax.plot(lat_new, lon_new, temp_list[layer], linewidth=10, color='r')
    null = [30]*len(lat_new)  #在y=30处的面
    
    ax.plot(null, lon_new, temp_list[layer])
    # ax.plot(lat_new,null, temp_list[layer])
    # ax.plot(lat_new, lon_new, null)
    
    plt.show()
    

    在这里插入图片描述
    同时在三个面上投影

    fig = plt.figure()
    ax = fig.gca(projection='3d')
    ax.plot(lat_new, lon_new, temp_list[layer], linewidth=10, color='r')
    #至于要在多大的值上投影,可以自己测试找到最合适的
    x_z = [min(lat_new)-0.5]*len(lat_new)
    y_z = [max(lon_new)+0.5]*len(lon_new)
    x_y = [min(temp_list[layer])-0.5]*len(temp_list[layer])
    
    ax.plot(x_z, lon_new, temp_list[layer])
    ax.plot(lat_new, y_z, temp_list[layer])
    ax.plot(lat_new, lon_new, x_y)
    
    plt.show()
    

    在这里插入图片描述

    展开全文
  • matlab实现三维图像处理 matlab实现三维图像处理 matlab实现三维图像处理
  • 图像处理(十)——三维图像处理

    千次阅读 2019-06-08 15:53:24
    三维图像处理与分析 三维场景距离信息的获取 运动图像序列分析
    展开全文
  • Python:利用python编程实现三维图像绘制展示(六面体旋转、三维球柱状体、下雪场景等) 目录 利用python编程实现三维图像绘制展示(六面体旋转、三维球柱状体、下雪场景等) 1、实现六面体旋转 2、三维球柱状...
  • 点云及三维图像处理综述

    千次阅读 2020-08-28 07:00:00
    点击上方“3D视觉工坊”,选择“星标”干货第一时间送达来源:新机器视觉点云概念点云与三维图像的关系:三维图像是一种特殊的信息表达形式,其特征是表达的空间中三个维度的数据,表现形式包括:深...
  • PCL综述—三维图像处理

    千次阅读 2019-01-17 15:24:00
    1、三维图像分类  三维图像是一种特殊的信息表达形式,其特征是表达的空间中三个维度的数据。和二维图像相比,三维图像借助第三个维度的信息,可以实现天然的物体-背景解耦。除此之外,对于视觉测量来说,物体的二...
  • 一:利用的包:(1)构建三维对象:mpl_toolkits.mplot3d里面导入Axes3D(2)数据方面操作:numpy(3)绘图工具包:matplotlib.pyplot二:绘图:1、绘图主要分成两种情况:(1)一种是根据函数来绘制三维图(2)一种是根据三维...
  • matlab 画三维图像

    千次阅读 2016-09-20 13:59:02
    直接用 figure 打开一个新图像的话,这个图像是二维的,如果加上 hold on,三维图像就画不上去了 解决方法:plot3(0,0,0,'Visible','off'); 这样产生的图像是三维的。 我所知的画三维图像的三个函数是...
  • 压缩感知CS最全matlab程序,二维三维图像处理,恢复算法,CSDN中最全的压缩感知程序包,12M的程序,也包含陶哲轩的关于压缩感知的PPT及文章
  • 三维图像的对比

    2019-07-07 21:29:00
    题目是“三维图像的对比”,是一个工程需要的,具体需求是当一个物体形状发生改变时,能检测出变化的部分。 最近几天查了一些文献,进展不大,打算在这里记录一下,写一些收获,并监督自己专注一些。 在知网找到一...
  • 三维图像切面提取

    千次阅读 2017-12-01 15:31:19
    切片(Slice)或切面是三维图像比较常用的概念,尤其在医学图像中。通过提取切面可以方便地浏览和分析图像内部组织结构。VTK中vtkImageReSlice类可以实现图像切面的提取。在实际开发中,四视图中冠状视面、矢状面和...
  • 处理乳腺三维图像时,想要提取三维图像中肿瘤标记最大的那个slice, 就是opencv里的一个函数就解决了. import cv2 cv2.countNonZero(mask) 就是计算mask上的非0像素数量,之后找到最大值所在的slice就好了. ...
  • MATLAB 科研绘图---三维图像
  • 解螺旋公众号·陪伴你科研的第1890天二维图像分析技能已经Get了,那么三维图像分析呢?ImageJ(https://imagej.nih.gov/ij/)是美国National Institutes of Health(NIH)开发的基于Java的免费公共图像处理软件,在生物...
  • VTK修炼之道26:图像基本操作_三维图像切片提取

    万次阅读 热门讨论 2017-01-24 14:22:14
    1.三维图像切片提取 切片是指三维图像中的一个切面对应的图像。切面可以是过图像内部一点且平行于XY、YZ、XZ平面的平面,也可以是任意的过三维图像内部一点任意方向的平面。通过提取切片可以方便的浏览和分析...
  • matlab将三维图像合并

    2019-08-27 13:15:20
    将若干个三维图像集中在一个三维坐标系下显示,可以通过hold on和surf来实现 例如 [x1,y1]=meshgrid(2:0.04:4,0:pi/25:2*pi); z1=-0.3367346940-4.081632652./x1.^2+cos(2*y1); surf(x1,y1,z1); hold on; [x2,y2]=...
  • python 读取保存三维图像数据

    千次阅读 2020-04-01 12:07:50
    目录0. Motivation1. 失败的case2. 成功的case2.1 SimpleITK2.2 可视化 0. Motivation 因为项目需求,我需要将256×256×64256\times256\times64256...我想将三维图像数据保存到本地,方便可视化。 1. 失败的case 使...
  • 三维图像是一种特殊的信息表达形式,其特征是表达的空间中三个维度的数据。和二维图像相比,三维图像借助第三个维度的信息,可以实现天然的物体-背景解耦。除此之外,对于视觉测量来说,物体的二维信息往往随射影...
  • 使用numpy来画三维图像

    千次阅读 2017-11-23 10:20:23
    如果你学习过matlab,对画一些三维图像显示,感觉很吃惊,数据还能这么美丽地显示出来,其实python里使用numpy也同样显示这么美丽的图像出来的。如下例子:#python 3.6 #蔡军生 #...
  • python三维图像输出的代码如下所示:#画3D函数图像输出from mpl_toolkits.mplot3d import Axes3Dfrom matplotlib import cmimport matplotlib.pyplot as pltimport numpy as npimport mpl_toolkits.mplot3dfigure=...
  • 三维图像分类、语义分割和重建引言1 三维数据的深度学习原理1.1 三维数据表示方法1.2 神经网络的优势1.2.1 三维图的构成1.2.2 多视觉图像1.2.3 点云1.2.4 图模型1.3 图像分类和语义分割1.4 三维重建1.4.1 问题陈述和...
  • 示例数据可进入我的个站下载,免CSDN积分,方便... Marching Cube(C++ OpenGl代码)读取医学三维图像*.raw进行三维重建 #define GLUT_DISABLE_ATEXIT_HACK #include <stdlib.h> #include <string.h...
  • 绘画出图像灰度值的三维图像 方法一: i=imread('a1.jpg'); if(size(i,3)>1) i=rgb2gray(i); end i=double(i); mesh(i); figure,mesh(flipdim(i,1)),title('水平镜像翻转后 这样更加符合MATLAB对于图像处理...

空空如也

空空如也

1 2 3 4 5 ... 20
收藏数 11,760
精华内容 4,704
关键字:

三维图像