imagemagick 获取图片信息,放大缩小,指定区域,旋转,边框,draw png压缩问题

article/2025/9/26 3:10:32

Table of Contents

 

1.获取图片信息

2.放大缩小 -resize

3.放大缩小 -sample

4.指定区域

5.旋转

6.添加边框

7.draw的用法


1.获取图片信息

C:\Users\Administrator>magick identify F:\imagemagick\1.jpg
F:\imagemagick\1.jpg JPEG 1440x2560 1440x2560+0+0 8-bit sRGB 224745B 0.000u 0:00.000

C:\Users\Administrator>magick identify -format "%wx%h" F:\imagemagick\1.jpg
1440x2560

2.放大缩小 -resize

将图片调整为100像素宽度,高度自动保持比例

C:\Users\Administrator>magick F:\imagemagick\1.jpg -resize 100 F:\imagemagick\1reszie.jpg

将图片调整为100像素高,宽度自动保持比例

C:\Users\Administrator>magick F:\imagemagick\1.jpg -resize x100 F:\imagemagick\1reszie.jpg

将图片缩小至50%

C:\Users\Administrator>magick F:\imagemagick\1.jpg -resize 50% F:\imagemagick\1reszie.jpg

在保持比率的情况下,长和宽的值不能超过给定值

C:\Users\Administrator>magick F:\imagemagick\1.jpg -resize 100x100 F:\imagemagick\1reszie.jpg

在保持比率的情况下,长和宽不能小于给定的长宽

C:\Users\Administrator>magick F:\imagemagick\1.jpg -resize "100x200^" F:\imagemagick\1reszie.jpg

强制指定大小

C:\Users\Administrator>magick F:\imagemagick\1.jpg -resize 140x120! F:\imagemagick\1reszie.jpg

宽和高指定不同的缩放比例

C:\Users\Administrator>magick F:\imagemagick\1.jpg -resize 200x50% F:\imagemagick\1reszie.jpg

仅当图像的尺寸大于相应的宽度和/或高度参数时,才使用>缩小图像。

C:\Users\Administrator>magick F:\imagemagick\1.jpg -resize "100x200>" F:\imagemagick\1reszie.jpg

仅当图像的尺寸小于相应的宽度和/或高度参数时,才使用<来放大图像。

C:\Users\Administrator>magick F:\imagemagick\1.jpg -resize "2000x2000<" F:\imagemagick\1reszie.jpg

使用@指定图像的最大面积(以像素为单位),同时尝试保留纵横比。 (像素仅采用整数值,因此某些近似值始终有效。)

C:\Users\Administrator>magick F:\imagemagick\1.jpg -resize "10000@" F:\imagemagick\1reszie.jpg

在上面和下面的所有示例中,我们将几何参数括在引号内。 在许多情况下,这样做是可选的,但并非总是如此。 使用<或>时,我们必须将几何规范括在引号中,以防止shell将这些字符解释为文件重定向。 在Windows系统上,carat ^需要在引号内,否则将被忽略。 为了安全起见,我们应该保持将所有几何参数括在引号中的习惯,就像我们在这里一样。

3.放大缩小 -sample

-sample 只进行采样,不进行插值

马赛克

C:\Users\Administrator>magick F:\imagemagick\1.jpg -sample 10% -sample 1000% F:\imagemagick\1reszie.jpg

4.指定区域

magick logo: -region '100x200+10+20' -negate wizNeg1.png
magick logo: -region '100x200-10+20' -negate wizNeg2.png
magick logo: -gravity center -region '100x200-10+20' -negate wizNeg3.png

请注意,偏移总是需要+/-符号。偏移实际上不是图像中的真实位置;其坐标必须添加到其他位置。我们将其称为当前位置。但是,在上面的前两个例子中,该位置是图像的左上角,其坐标为(0,0)。 (这是默认情况下,没有其他指令可以更改它。)上面的第一个例子将100x200矩形的左上角置于(10,20)。

在许多情况下,负偏移可能是有意义的。在上面的第二个例子中,偏移量是(-10,20),由-10 + 20指定。在这种情况下,只能获得位于图像内的(虚拟)矩形部分;这相当于将几何体指定为90x200 + 0 + 20。

在上面的第三个示例中,-gravity设置先于其他设置,并将图像内的当前位置设置在图像的正中心。在这种情况下,在像素(320,240)处,因为图像的尺寸是640×480。这意味着偏移量适用于该位置,在这种情况下,该位置被移动到(320-10,240 + 20)=(310,260)。但是100x200区域本身受到 - 重力设置的影响,因此不会影响其左上角,而是确定区域自身的中心(在其中的(+ 50,+ 100))。因此,100x200矩形的中心移动到(310,260)。否定矩形的左上角现在位于(310-50,260-100)=(260,160)。

5.旋转

magick logo: -rotate 45 wizNeg1.png

将Paeth图像旋转(使用剪切操作)应用于图像。

仅当宽度超过高度时,才使用>旋转图像。 <仅在宽度小于高度时旋转图像。 例如,如果指定-rotate“-90>”并且图像大小为480x640,则不会旋转图像。 但是,如果图像为640x480,则旋转-90度。 如果使用>或<,请将其括在引号中,以防止它被误解为文件重定向。

旋转图像遗留下来的角落中的空三角形用背景颜色填充。

使用黑色背景填充遗留区域

C:\Users\Administrator>magick logo: -background black -rotate 45 wizNeg1.png

使用白色背景填充遗留区域

C:\Users\Administrator>magick logo: -background white -rotate 45 wizNeg1.png

使用指定的rgb填充遗留区域

C:\Users\Administrator>magick logo: -background #ffff00 -rotate 45 wizNeg1.png

使用透明颜色填充遗留区域

C:\Users\Administrator>magick logo: -background rgba(0,0,0,0) -rotate 45 wizNeg1.png

6.添加边框

原始图片:

添加蓝色边框

magick exam.jpg -bordercolor blue -border 5 boder-1.jpg

添加双层边框

magick exam.jpg -bordercolor blue -border 5 -bordercolor "#00ff00" -border 5 border-2.jpg

添加宽高厚度不一样的边框

magick exam.jpg -mattecolor "green" -frame 2x5 border-3.jpg

添加有生姜效果的边框

magick exam.jpg -mattecolor "blue" -frame 10x10+0+10 border-5.jpg

magick exam.jpg -mattecolor "blue" -frame 10x10+10+0 border-5.jpg

7.draw的用法

ImageMagicK的convert参数draw笔记 

http://www.netingcn.com/imagemagick-convert-draw.html

 

png压缩问题

http://www.voidcn.com/article/p-pijxclpk-btw.html


http://chatgpt.dhexx.cn/article/nyaSYwew.shtml

相关文章

解决透视变换后图片信息丢失的问题

问题背景&#xff1a;最近在做图像拼接&#xff0c;思路是首先对输入的两幅图进行特征提取&#xff0c;提取的方法使用的是经典的SIFT&#xff08;Scale-invariant feature transform&#xff09;算法&#xff1b;然后进行特征匹配&#xff0c;匹配的思路是将一幅图中的特征点以…

wx.getImageInfo(Object object)获取图片信息

微信小程序第一周总结 总结人&#xff1a;陈曦 wx.getImageInfo(Object object)获取图片信息 在小程序/小游戏中使用网络相关的 API 时&#xff0c;每个微信小程序需要事先设置一个通讯域名&#xff0c;小程序只可以跟指定的域名与进行网络通信。包括普通 HTTPS 请求&#xff…

利用Python实现图片信息隐藏

最近上了一门信息隐藏的课,讲的关于技术层面的内容还是蛮多的,但是我也没记住几个。吭吭,言归正传,这两天要交大作业,自己手动实现一种图像信息隐藏,查了一番资料后,决定Python来做(主要是调用包方便),原理很简单,主要利用修改图像RGB通道的某一通道值来隐藏二维信息…

Python获取图片信息小栗子

1.首先我们需要先导入所需要的包&#xff0c;没有的话可以【 pip install ~】 来获取 import requests from lxml import etree 2.接下来我们要进行UA伪装&#xff0c;伪装的目的就是把电脑伪装成人 因为很多wangzahn都有反扒机制&#xff0c;不进行伪装的话根本就无法进行爬…

线性回归用matlab怎么做,matlab中如何应用regress()函数进行线性回归分析?

matlab中如何应用regress()函数进行线性回归分析&#xff1f;回归分析是研究一个随机变量与一个或多个普通变量之间的相关系的统计方法。如果做回归分析&#xff0c;有很多软件都已经封装好了的&#xff0c;我们只需直接调用就可以了。例如Matlab中的regress()就是做线性回归分…

[Matlab]篇----回归分析Matlab命令(regress篇)

[Matlab]篇—-回归分析Matlab命令&#xff08;regress篇) 一、简介 最近在做回归分析方面的东西&#xff0c;网上查阅相关资料&#xff0c;通过实际调试&#xff0c;对调试结果进行总结。 回归分析法指利用数据统计原理&#xff0c;对大量统计数据进行数学处理&#xff0c;并…

回归(Regression )

回归&#xff08;Regression &#xff09; 模型定义 Regression 就是找到一个函数 functionfunction &#xff0c;通过输入特征 x&#xff0c;输出一个数值 Scalar。 模型应用 股市预测&#xff08;Stock market forecast&#xff09; 输入&#xff1a;过去10年股票的变动、…

数学建模:回归分析——regress 函数

matlab中regress 函数 https://jingyan.baidu.com/article/ca41422f6777aa1eae99ed87.htmlhttps://jingyan.baidu.com/article/ca41422f6777aa1eae99ed87.html 结果 附录 1、数据文本&#xff1a;data1_1 0 68 110 121 23 111 100 37 66 110 12 169 50 46 87 117 16 155 25…

[matlab]多元线性回归-regress函数的用法

转载博客原址&#xff1a;https://blog.csdn.net/YinJianxiang/article/details/81464245 回归分析 回归分析 (英语&#xff1a;Regression Analysis) 是一种统计学上分析数据的方法&#xff0c;目的在于了解两个或多个变量间是否相关、相关方向与强度&#xff0c;并建立数学…

机器学习——regression

1 用线性回归找到最佳拟合直线 线性回归 优点&#xff1a;结果易于理解&#xff0c;计算上不复杂 缺点&#xff1a;对非线性的数据拟合不好 使用数据类型&#xff1a;数值型数据和标称型数据。 回归方程&#xff1a;是根据样本资料通过回归分析所得到的反映一个变量&#xff0…

回归问题(Regression)

Regression 前言Dependent vs. Explanatory VariablesHandle Numerical Labelssquared error和variance什么区别 Linear RegressionLinear Regression in 1 Dimension Least Squares &#xff08;最小二乘&#xff0c;重点&#xff09;Least Squares ObjectiveMinimizing a Dif…

Fama-Macbeth回归图形化:EAP.fama_macbeth.Fama_macbeth_regress.plot()

实证资产定价&#xff08;Empirical asset pricing&#xff09;已经发布于Github和Pypi. 包的具体用法(Documentation)博主将会陆续在CSDN中详细介绍&#xff0c;也可以通过Pypi直接查看。 Pypi: pip install --upgrade EAP HomePage&#xff1a; EAP Empirical Asset Prici…

[MATLAB]一元线性回归(regress参数检验说明)

今天学习了统计回归模型&#xff0c;统计回归模型是基于统计理论建立的最基本最常用的一类数据驱动模型。本篇博文主要围绕regress函数的参数进行讲解&#xff01; 一元线性回归模型的概念 这也要从一个女装公司讲起&#xff01; 问&#xff1a;请用函数关系描述身高与腿长的…

matlab中的regress函数总结

clc cleardataxlsread(ty_num.xlsx); %第三列是全区&#xff1b;第四列是偶极子data1xlsread(w_E.xlsx); %第一列是w&#xff0c;第二列是东%设置x的值&#xff0c;第1列全为1 x(:,2)data(:,1); x(:,1)1;ydata1(:,3); [b,bint,r,rint,stats]regress(y,x);b的值为系数&#xff0…

回归(regression)

1. 回归&#xff08;regression&#xff09; 1.1 起源与定义 回归最早是被高尔顿提出的。他通过研究发现&#xff1a;如果父母都比较高一些&#xff0c;那么生出的子女身高会低于父母的平均身高&#xff1b;反之&#xff0c;如果父母双亲都比较矮一些&#xff0c;那么生出的子…

STATA regress回归结果分析

对于STATA回归结果以前一直不清不楚&#xff0c;每次都需要baidu一波&#xff0c;因此今天将结果相关分析记录下&#xff1a; 如上图 上面左侧的表是用来计算下面数据的&#xff0c;分析过程中基本不会用到 右侧从上往下 1.Number of obs 是样本容量 2.F是模型的F检验值&a…

MATLAB regress命令

1 regress命令 用于一元及多元线性回归&#xff0c;本质上是最小二乘法。在Matlab 命令行窗口输入help regress &#xff0c;会弹出和regress的相关信息&#xff0c;一一整理。 调用格式&#xff1a; B regress(Y,X)[B,BINT] regress(Y,X)[B,BINT,R] regress(Y,X)[B,BINT,R…

MATLAB回归分析命令——regress命令

题目 假设向量y[7613.51 7850.91 8381.86 9142.81 10813.6 8631.43 8124.94 9429.79 10230.81 10163.61 9737.56 8561.06 7781.82 7110.97]; x1[7666 7704 8148 8571 8679 7704 6471 5870 5289 3815 3335 2927 2758 2591]; x2[16.22 16.85 17.93 17.28 17.23 17 19 18.22…

matlab中多元线性回归regress函数精确剖析(附实例代码)

matlab中多元线性回归regress函数精确剖析(附实例代码) 目录 前言 一、何为regress&#xff1f; 二、regress函数中的参数 三、实例分析 总结 前言 regress函数功能十分强大&#xff0c;它可以用来做多元线性回归分析&#xff0c;它不仅能得出线性回归函数中各个系数&#…

Ubuntu 下安装 Yar 扩展遇到的问题以及解决方案

本文为原创&#xff0c;转载请注明出处。 昨天在ubuntu上安装完yar之后发现yar还是不能用&#xff0c;感觉有些不对劲。 通过在微博上请教 Laruence 大神和公司的大大之后&#xff0c;问题解决了&#xff0c;下面就来分享这一成果。 如果还没有做好安装工作&#xff0c;请看…