当前位置: 首页 > news >正文

commons-imaging(图像处理库)

概述

纯Java的开源图像处理库,支持多种格式的读写和操作,适合需要跨平台图像处理的项目

maven依赖

        <dependency><groupId>org.apache.commons</groupId><artifactId>commons-imaging</artifactId><version>1.0-alpha2</version></dependency>

相关API

Imaging 图像读写、格式转换、元数据处理等基础功能

方法描述
hasImageFileExtension(File file)
hasImageFileExtension(String fileName)
判断文件是否有图片后缀名
guessFormat(byte[] bytes)
guessFormat(File file)
guessFormat(ByteSource byteSource)
获取图片的格式
getICCProfile(byte[] bytes)
getICCProfile(byte[] bytes, Map<String, Object> params)
getICCProfile(InputStream is, String fileName)
getICCProfile(InputStream is, String fileName, Map<String, Object> params)
getICCProfile(File file)
getICCProfile(File file, Map<String, Object> params)
获取图片色彩描述对象
getICCProfileBytes(byte[] bytes)
getICCProfileBytes(byte[] bytes, Map<String, Object> params)
getICCProfileBytes(File file)
getICCProfileBytes(File file, Map<String, Object> params)
获取图片色彩描述字节数组
getImageInfo(String fileName, byte[] bytes, Map<String, Object> params)
getImageInfo(String fileName, byte[] bytes)
getImageInfo(InputStream is, String fileName)
getImageInfo(InputStream is, String fileName, Map<String, Object> params)
getImageInfo(byte[] bytes)
getImageInfo(byte[] bytes, Map<String, Object> params)
getImageInfo(File file, Map<String, Object> params)
getImageInfo(File file)
获取图片详情信息
getImageSize(InputStream is, String fileName)
getImageSize(InputStream is, String fileName, Map<String, Object> params)
getImageSize(byte[] bytes)
getImageSize(byte[] bytes, Map<String, Object> params)
getImageSize(File file)
getImageSize(File file, Map<String, Object> params)
getImageSize(ByteSource byteSource, Map<String, Object> params)
获取图片的尺寸大小
getXmpXml(InputStream is, String fileName)
getXmpXml(InputStream is, String fileName, Map<String, Object> params)
getXmpXml(byte[] bytes)
getXmpXml(byte[] bytes, Map<String, Object> params)
getXmpXml(File file)
getXmpXml(File file, Map<String, Object> params)
getXmpXml(ByteSource byteSource, Map<String, Object> params)
用于提取图像 XMP 元数据
getMetadata(byte[] bytes)
getMetadata(byte[] bytes, Map<String, Object> params)
getMetadata(InputStream is, String fileName)
getMetadata(InputStream is, String fileName, Map<String, Object> params)
getMetadata(File file)
getMetadata(File file, Map<String, Object> params)
获取图片(手机、照相机等拍摄的图片)的元数据,注意:截图(未写入过)的元数据为null
dumpImageFile(byte[] bytes)
dumpImageFile(File file)
用于将图像文件内容以十六进制(Hex)或文本格式转储输出
getFormatCompliance(byte[] bytes)
getFormatCompliance(File file)
用于验证图像文件是否符合指定格式规范的工具方法
getAllBufferedImages(InputStream is, String fileName)
getAllBufferedImages(byte[] bytes)
getAllBufferedImages(File file)
从多页图像格式(如 GIF、TIFF)中提取所有 BufferedImage 对象。
getBufferedImage(InputStream is)
getBufferedImage(InputStream is, Map<String, Object> params)
getBufferedImage(byte[] bytes)
getBufferedImage(byte[] bytes, Map<String, Object> params)
getBufferedImage(File file)
getBufferedImage(File file, Map<String, Object> params)
读取图像内容到BufferedImage对象
writeImage(BufferedImage src, File file, ImageFormat format, Map<String, Object> params)
writeImage(BufferedImage src, OutputStream os, ImageFormat format, Map<String, Object> params)
将BufferedImage对象转换为图片文件或输出流
writeImageToBytes(BufferedImage src, ImageFormat format, Map<String, Object> params)将BufferedImage对象转换为字节数组

ICC_Profile 加载和管理 ICC 色彩配置文件

方法描述
getInstance(byte[] data)
getInstance (int cspace)
getInstance(String fileName)
getInstance(InputStream s)
用于加载 ICC 色彩配置文件
getMajorVersion()用于获取图像格式主版本号
getMinorVersion()用于获取图像格式次版本号
getProfileClass()用于获取 ICC 色彩配置文件类型
getColorSpaceType()用于获取 ICC 色彩配置文件色彩空间类型
getPCSType()用于获取图像色彩空间类型
write(String fileName)
write(OutputStream s)
用于将 BufferedImage 对象写入文件
getData()
getData(int tagSignature)
用于获取ICC 色彩配置文件数据的
setData(int tagSignature, byte[] tagData)用于设置 ICC 色彩配置文件数据的
getNumComponents()用于获取图像的颜色分量数量

ImageInfo 图像基础属性和元数据

方法描述
getBitsPerPixel()用于获取图像每个像素的色深(位深度)
getComments()用于获取图像文件中的注释信息列表
getFormat()获取图像类型
getFormatName()获取图像类型
getWidth()像素尺寸,宽
getHeight()像素尺寸,高
getMimeType()用于获取图像的MIME类型字符串
getNumberOfImages()用于获取图像文件中包含的图像数量
getPhysicalHeightDpi()返回 DPI(每英寸点数)。
getPhysicalHeightInch()用于获取图像的物理高度
getPhysicalWidthDpi()返回 DPI(每英寸点数)。
getPhysicalWidthInch()用于获取图像的物理宽度
isProgressive()用于判断图像是否为渐进式或交错式显示
getColorType()用于获取图像的颜色类型
dump()用于将图像的元数据信息以文本形式输出到控制台或日志,主要用于调试和开发阶段快速查看图像属性
toString()
toString(PrintWriter pw, String prefix)
getFormatDetails()用于获取图像文件格式的详细描述信息(如版本号、编码特性等)
isTransparent()用于判断图像是否具有透明通道(Alpha通道)
usesPalette()用于判断图像是否使用调色板(Palette)存储颜色数据
getCompressionAlgorithm()用于获取图像的压缩算法描述信息

ImageFormat 图像格式

方法描述
getName()用于获取图像格式名称
getExtension()用于获取图像格式默认文件扩展名

Dimension 图像尺寸

方法描述
getWidth()用于获取 Dimension 对象宽度值
getHeight()用于获取 Dimension 对象高度值
getSize()用于获取 Dimension 对象的大小
setSize(Dimension d)
setSize(int width, int height)
setSize(double width, double height)
设置大小

ImageMetadata 解析和操作图像元数据

方法描述
toString(String var1)对元数据转字符串
getItems()用于获取图像元数据列表

FormatCompliance 验证图像格式合规性

方法描述
getDefault()用于初始化默认合规规则
FormatCompliance(String description)
FormatCompliance(String description, boolean failOnError)
构造方法
addComment(String comment)
addComment(String comment, int value)
用于向图像文件添加注释信息的工具方法,适用于需要嵌入自定义元数据或说明文本
dump()
dump(PrintWriter pw)
用于将图像格式合规性检查结果以文本形式输出
compareBytes(String name, byte[] expected, byte[] actual)用于比较两个字节数组是否代表相同图像数据
checkBounds(String name, int min, int max, int actual)用于边界检查
compare(String name, int valid, int actual)
compare(String name, int[] valid, int actual)
用于比较两个字节数组是否代表相同图像数据

ColorTools 颜色空间转换和色彩管理

方法描述
correctImage(BufferedImage src, File file)纠正图片
relabelColorSpace(BufferedImage bi, ICC_Profile profile)
relabelColorSpace(BufferedImage bi, ColorSpace cs)
relabelColorSpace(BufferedImage bi, ColorModel cm)
用于重新标记 BufferedImage 颜色空间
deriveColorModel(BufferedImage bi, ColorSpace cs)
deriveColorModel(BufferedImage bi, ColorSpace cs, boolean forceNoAlpha)
deriveColorModel(ColorModel colorModel, ColorSpace cs, boolean forceNoAlpha)
用于图像颜色空间转换
convertToColorSpace(BufferedImage bi, ColorSpace to)用于将 BufferedImage 从当前颜色空间转换到目标颜色空间
convertTosRGB(BufferedImage bi)用于将 BufferedImage 强制转换为 sRGB 颜色空间
convertBetweenICCProfiles(BufferedImage bi, ICC_Profile from, ICC_Profile to)用于在两个 ICC 配置文件之间转换 BufferedImage 颜色空间
convertToICCProfile(BufferedImage bi, ICC_Profile to)用于将 BufferedImage 转换到指定 ICC 配置文件定义的颜色空间
convertBetweenColorSpacesX2(BufferedImage bi, ColorSpace from, ColorSpace to)通过两次转换和中间重采样实现更高精度的颜色空间变换,适用于对色彩准确性要求极高的场景
convertBetweenColorSpaces(BufferedImage bi, ColorSpace from, ColorSpace to)用于在两个颜色空间之间转换 BufferedImage
http://www.dtcms.com/a/486832.html

相关文章:

  • 打渔网站建设南冒网站建设制作推广公司
  • 可以充值的网站怎么建设wordpress英文文章格式
  • 惠州网站设计公司网站建设做什么会计分录
  • 基于自动驾驶仿真软件的交通事故档案建模与分析
  • Cursor 脚本如何进入Conda环境
  • Flink-Kafka 连接器的 Checkpoint 与 Offset 管理机制
  • 域名备案查询网站有哪些手机网站
  • C++智能指针的原理与应用
  • 做淘宝那样的网站麻烦吗宜昌网站网站建设
  • wordpress小说站模板wordpress在线教程
  • HTTP(2)~
  • 建网站需要什么条件小户型室内装修设计公司网站
  • 【深度学习】目标检测全解析:定义、数据集、评估指标与主流算法
  • 做网站构架河南app定制开发
  • 2025年--Lc187--120. 三角形最小路径和(多维动态规划,矩阵)--Java版
  • 脑电分析——论文解读
  • HTTPS 包 抓取与分析实战,从抓包到解密、故障定位与真机取证
  • 做网站实训目的和意义公司网页制作培训试题
  • 影响DCDC输出纹波的因素有哪些?
  • 婴儿辅食中企动力提供网站建设自适应全屏网站
  • 【征文计划】Rokid CXR-M SDK全解析:从设备连接到语音交互的AR协同开发指南
  • 川崎焊接机器人弧焊气体节约
  • 做网站横幅价格wordpress 36kr
  • Java-Spring入门指南(二十六)Android Studio下载与安装
  • 14.C 语言实现一个迷你 Shell
  • 【理解React Hooks与JavaScript类型系统】
  • 如何使用PyTorch高效实现张量的批量归一化原理与代码实战
  • 文心快码Comate3.5S更新,用多智能体协同做个健康管理应用
  • 江苏赛孚建设工程有限公司网站做php门户网站那个系统好
  • OpenCV5-图像特征harris-sift-特征匹配-图像全景拼接-答题卡识别判卷