13 个不稳定版本 (4 个破坏性更新)

0.5.3 2024年4月20日
0.5.2 2024年4月20日
0.4.1 2024年4月14日
0.3.6 2024年4月19日
0.1.0 2023年2月28日

#76图像

Download history 269/week @ 2024-05-02 426/week @ 2024-05-09 222/week @ 2024-05-16 240/week @ 2024-05-23 248/week @ 2024-05-30 333/week @ 2024-06-06 390/week @ 2024-06-13 444/week @ 2024-06-20 308/week @ 2024-06-27 629/week @ 2024-07-04 472/week @ 2024-07-11 431/week @ 2024-07-18 420/week @ 2024-07-25 385/week @ 2024-08-01 272/week @ 2024-08-08 267/week @ 2024-08-15

1,407 每月下载次数
6 个 crate 中使用(通过 jpeg2k

BSD-2-Clause

1.5MB
36K SLoC

Cargo Build & Test

C2Rust 版本

openjp2-rs 中正在开发一个实验性的 Rust 版本。

要使用 Rust 版本构建 CLI 工具 opj_compress/opj_decompress/opj_dump,请使用 CMake 标志 USE_RUST_LIB

mkdir build
cd build
cmake .. -DUSE_RUST_LIB=ON -DBUILD_SHARED_LIBS=OFF -DCMAKE_BUILD_TYPE=Release
make

OPENJPEG 库和应用

什么是 OpenJPEG ?

OpenJPEG 是用 C 语言编写的开源 JPEG 2000 编解码器。它旨在推广使用来自联合图像专家组 (JPEG) 的静态图像压缩标准 JPEG 2000。自 2015 年 4 月以来,它已被 ISO/IEC 和 ITU-T 正式认可为 JPEG 2000 参考软件

谁可以使用此代码 ?

badge-license

任何人。由于 OpenJPEG 代码是在 BSD 2-clause "Simplified" 许可证 下发布的,因此任何人都可以使用或修改代码,甚至用于商业应用。唯一的限制是在源代码或二进制文件文档中保留版权。当然,如果您以可能对其他用户有价值的任何方式修改了代码,我们鼓励您共享它(通过 github pull request 或通过填写 issue),但这不是必需的。

如何安装和使用 OpenJPEG ?

API 文档需要重大重构。同时,您可以查看 安装说明编解码器文档

当前状态

badge-build

badge-msvc-build

badge-coverity

开发者是谁?

该库由卢万天主教大学(UCL)的图像与信号处理组(ISPGroup)开发并维护,得到法国国家空间研究中心(CNES)、CS公司和intoPIX公司的支持。JPWL模块由意大利佩鲁贾大学的数字信号处理实验室(DSPLab)开发。

文件夹层次结构详情

  • src
    • lib
      • openjp2: 包含openjp2库的源代码(第1部分和第2部分)
      • openjpip: 用于远程浏览jpeg 2000图像的完整客户端-服务器架构。
    • bin: 包含所有使用openjpeg库的应用程序
      • common: 所有应用程序的公共文件
      • jp2: 一个基本的编解码器
      • jpip: OpenJPIP应用程序(服务器和解码服务器)
        • java: JPIP的Java客户端查看器
      • wx
        • OPJViewer: 基于wxWidget的显示j2k文件的GUI
  • openjp2-rs: src/lib/openjp2的Rust版本
  • wrapping
    • java: 用于Java程序的jni封装openjpeg
  • thirdparty: 一些应用程序使用的第三方库。如果系统上没有找到这些库,则将构建它们。请注意,libopenjpeg本身没有任何依赖。
  • doc: doxygen文档设置文件和man页面
  • tests: openjpeg测试套件的配置文件和工具。所有测试图像都位于openjpeg-data存储库中。
  • cmake: cmake相关文件
  • scripts: 开发者脚本

有关许可证和版权信息,请参阅LICENSE

有关安装程序,请参阅INSTALL

有关后续版本中的用户可见更改,请参阅NEWS

已弃用组件

在2.4.0版本发布后,已删除openjpwl、openjp3d和openmj2组件。它们的构建和工作状态未知。对此感兴趣的人应从2.4.0标签开始。

API/ABI

API/ABI时间表会自动更新在此处

OpenJPEG致力于为您的应用程序提供稳定的API/ABI。因此,它只公开其功能的一小部分。它使用导出/隐藏功能的机制。如果您不确定可以在您的应用程序中使用哪些功能,您应使用类似于gcc的编译标志编译OpenJPEG:-fvisibility=hidden。有关更多信息,请参阅http://gcc.gnu.org/wiki/Visibility

在Windows上,MSVC直接支持导出/隐藏功能,因此可用的API仅为OpenJPEG支持的API。

依赖项