图像的旋转——imrotate

调用函数: imrotate

B = imrotate (A, angle)                          % A 是旋转的图像矩阵,angle是旋转角度,-45是顺时针

B = imrotate (A, angle,method)     % method是插值的方法(如,nearest,bilinear,bicubic。注意:要打单引号,‘nearest’)

B = imrotate (A, angle,method,bbox)    % bbox是指旋转后的显示方式(两种:1、crop,旋转后的图像跟原图像大小一样,超过边框的舍去;2、loose,旋转后的图像不变,随框大小而变化)

例子:

I=imread(‘C:\Users\Administrator\Desktop\star2.jpg‘);  %将图片信息读入到I这个矩阵中
J1=imrotate(I,-45,‘bicubic‘);              %使用bicubic插值顺时针旋转45
J2=imrotate(I,45,‘bilinear‘,‘crop‘);            %使用bilinear插值法旋转,用crop方式显示,旋转后的图像跟原图像大小一样,多余的地方舍去
J3=imrotate(I,45,‘bilinear‘,‘loose‘);           %使用bilinear插值法旋转,用loose方式显示,旋转后的图像不变,随框大小而变化
figure;
subplot(221); imshow(I);
subplot(222); imshow(J1);
subplot(223); imshow(J2);
subplot(224); imshow(J3);

运行结果:

总结:

1、imrotate函数实现图像的旋转,旋转后由黑色补充,如果能够改变背景颜色,效果更好

时间: 2024-12-29 07:07:47

图像的旋转——imrotate的相关文章

在CSS3中,可以利用transform功能来实现文字或图像的旋转、缩放、倾斜、移动这四种类型的变形处理

CSS3中的变形处理(transform)属 transform的功能分类 1.旋转 transform:rotate(45deg); 该语句使div元素顺时针旋转45度.deg是CSS 3的"Values and Units"模块中定义的一个角度单位. 2.缩放 transform:scale(0.8,1); 使用缩放的方法实现文字或图像的缩放效果,在参数中指定缩放倍率.该语句使用scale方法使该元素在水平方向上缩小了20%,垂直方向上不缩放. 3.倾斜 transform:ske

OpenCV文本图像的旋转矫正

用户在使用Android手机拍摄过程中难免会出现文本图像存在旋转角度.这里采用霍夫变换.边缘检测等数字图像处理算法检测图像的旋转角度,并根据计算结果对输入图像进行旋转矫正. 首先定义一个结构元素,再通过该结构元素对该图像进行开运算和闭运算(即腐蚀膨胀运算). Imgproc.cvtColor(matOri, matGray, Imgproc.COLOR_RGB2GRAY); Mat kernel = Imgproc.getStructuringElement(Imgproc.CV_SHAPE_R

[Android]android.graphics.Camera实现图像的旋转、缩放,配合Matrix实现图像的倾斜

android.graphics.Camera可以对图像执行一些比较复杂的操作,诸如旋转与绽放,与Matrix可实现图像的倾斜. 个人总结Camera与Matrix的一些区别如下: Camera的rotate()相关方法是指定某一维度上旋转指定的角度. Matrix的rotate()相关方法实现的效果是顺时针旋转指定的角度:与Camera指定Z轴旋转效果相同,但方向相反. Camera的translate()方法根据某一维度上视点的位移实现图像的缩放,与Matrix的scale()相关方法作用效

图像任意旋转

1 #include <iostream> 2 #include<opencv2/opencv.hpp> 3 #include <deque> 4 using namespace std; 5 using namespace cv; 6 void Rotate_vertical(Mat &src, Mat &dst, float angle)//src原图像,dst输出图像,旋转角度 7 { 8 float rad = (float)(angle / 1

图像仿射变换/旋转

import cv2import numpy as npimg = cv2.imread('../img/zidan.jpg',1)imgInfo = img.shapeheight = imgInfo[0]width = imgInfo[1]matSrc = np.float32([[0,0],[0,height-1],[width-1,0]])#输入图像对应的三角形的顶点坐标matDst = np.float32([[50,50],[100,height-50],[width-200,100

GD库的基本信息,图像的旋转、水印、缩略图、验证码,以及图像类的封装

GD库检测 <?php phpinfo(); ?> GD库安装• Windows 使用phpstudy • Linux 编译安装 –with-gd• Linux 编译安装扩展 GD库支持的图像格式 使用 gd_info() 函数 检测服务器支持的图像格式 图像信息处理 <?php //获取图像详细信息 $image = '../image/b.png'; $info = getimagesize($image); var_dump($info); $string = file_get_c

图像处理-图像的旋转及变换

对于倾斜的图像,可以通过矩阵转换将其进行矫正. 先计算出图像倾斜矩形的长宽,而后将矫正后的形状的矩形坐标确定,通过getPerspectiveTransform获取矫正前与矫正后坐标的变换矩阵,而后利用warpPerspective将图像进行变换 1 float dstSize1 = dist(Final_poly[i][0], Final_poly[i][1]); 2 float dstSize2 = dist(Final_poly[i][1], Final_poly[i][2]); 3 fl

图像旋转(ccf真题)

ccf认证2015年3月第一题 问题描述 旋转是图像处理的基本操作,在这个问题中,你需要将一个图像逆时针旋转90度. 计算机中的图像表示可以用一个矩阵来表示,为了旋转一个图像,只需要将对应的矩阵旋转即可. 输入格式 输入的第一行包含两个整数n, m,分别表示图像矩阵的行数和列数. 接下来n行每行包含m个整数,表示输入的图像. 输出格式 输出m行,每行包含n个整数,表示原始矩阵逆时针旋转90度后的矩阵. 样例输入 2 3 1 5 3 3 2 4 样例输出 3 4 5 2 1 3 评测用例规模与约定

图像旋转

这个图像的旋转,即矩阵的操作,和左神讲的旋转打印矩阵及其改编题型很相似,异曲同工! //题目描述 // //有一副由NxN矩阵表示的图像,这里每个像素用一个int表示,请编写一个算法,在不占用额外内存空间的情况下(即不使用缓存矩阵), //将图像顺时针旋转90度. //给定一个NxN的矩阵,和矩阵的阶数N, 请返回旋转后的NxN矩阵, 保证N小于等于500,图像元素小于等于256. //测试样例: //[[1, 2, 3], [4, 5, 6], [7, 8, 9]], 3 //返回:[[7,