LibRaw

LibRaw

开源RAW图像处理库 支持多种相机格式

LibRaw是一个开源的RAW图像处理库,提供统一接口用于提取数码相机RAW文件中的像素数据、元数据和预览图。支持多种相机格式,可用于开发RAW查看器和转换器等应用。该项目专注于扩展相机支持、优化元数据提取和接口,为开发者提供高效的RAW处理工具。

LibRawRAW图像处理开源库数码相机元数据提取Github开源项目

LibRaw

用于读取和处理数码相机RAW图像的库

LibRaw库提供了一个简单统一的接口,用于从数码相机生成的RAW文件中提取以下内容:

  • RAW数据(像素值)
  • 处理RAW所需的元数据(几何信息、CFA/拜耳阵列、黑电平、白平衡等)
  • 嵌入的预览图/缩略图

该库旨在用于处理RAW文件的程序,如:

  • RAW查看器
  • RAW转换器
  • RAW数据分析器
  • 用于拼接和合成多帧聚合图像(如全景图和图像堆栈)的软件

使用LibRaw库可以专注于处理RAW文件中包含的数据的实质部分,而不会被各种RAW文件和元数据格式、压缩算法等分散注意力。

该库的开发重点是:

  • 支持新的相机和格式
  • 改进提取RAW处理所需的元数据
  • 提供读取其他类型元数据的接口

此外,LibRaw库还提供一些基本的RAW转换功能,适用于RAW转换不是LibRaw使用应用程序主要功能的情况(例如:支持500多种图形文件格式包括RAW的查看器)。这些方法继承自Dave Coffin的dcraw.c工具(参见下面的"项目历史"部分);目前不计划进一步开发这些方法,因为我们不认为生产级渲染在LibRaw的功能范围内(保留这些方法是为了与先前版本兼容,并用于快速测试RAW支持和其他方面)。

许可

LibRaw库以免费和开源代码形式发布,受两种许可证约束:

1. GNU较宽松公共许可证(LGPL)版本2.1

2. 通用开发和分发许可证(CDDL)版本1.0

在应用程序中使用LibRaw库时,您可以选择更适合您需求的许可证。

如果您修改/添加/改进LibRaw源代码,则只有在您同意将其分发到官方源代码下,并受上述两种许可证约束的情况下,您的补丁才能被纳入库中。

我们不保证未来版本的LibRaw的许可不会改变。

更新策略

主要/次要版本发布

  • 主要版本(例如0.20)每一年半到三年发布一次。
  • 当主要版本的第一个公开测试版发布时,支持的相机和格式列表会被冻结;我们尽量(但不保证)也冻结API/ABI。
  • 公开的主要版本只包含在广泛用户群中(包括我们的商业产品)经过充分测试的代码。一些非常新的内容可能不会包含在其中(但可能会包含在公开快照中,见下文)。
  • 次要更新(0.20.1, 0.20.2)不会改变API/ABI,也不会添加新的相机支持;通常只是修复错误。
  • 错误修复会尽快发布在公共GitHub仓库中。
  • 次要版本号递增:通常是在修复了严重错误时发布,这些错误可能影响许多库用户(例如,可能的堆栈溢出)。

公开快照

  • 公开快照每9-18个月在公共GitHub仓库中发布。
  • 这些版本包含上一个主要版本之后添加的新相机支持。公开快照的API/ABI不是固定的,可能会改变。
  • 公开快照总是在相当大的用户群中进行测试,可以认为适合用于处理来源已知的文件(即直接由用户数码相机记录的文件)的程序。然而,公开快照不应被认为足够可靠,不适合处理专门为漏洞测试构建的文件;也就是说,不应在允许匿名处理未知来源文件的公共服务中使用。

支持和反馈

  • 您可以通过以下方式之一提交错误报告:
  • 可以在论坛、通过反馈表单以及上述电子邮件地址提问。 请不要在GitHub的Issues中提问;它专门用于问题报告。
  • 我们更倾向于通过GitHub上的Pull Requests处理源代码的添加。

我们不能保证对通过上述方法提交的请求做出任何回应。如果您需要保证对错误报告的回应和/或扩展技术支持,请使用扩展支持选项。

项目历史

LibRaw项目于2008年启动,基于dcraw.c(Dave Coffin)工具,其目标是:

  • 将dcraw.c转换为可供其他程序使用的库,同时稍微改进dcraw.c的结构(删除全局变量,使其线程安全等)
  • 导入对dcraw.c所做的更改
  • 改进/扩展元数据的提取

不幸的是,对dcraw.c的支持在2015年减少到最低限度,并在2018年完全停止。从那时起,对新相机的支持(包括对新格式的支持)完全由LibRaw团队完成。

实现RAW到RGB渲染的代码继承自dcraw.c,没有进行重大更改(尽管实施了一系列更改以加速和并行化此代码)。

在2010年代初中期,我们很高兴扩展了LibRaw中实现的后处理,并欣然接受外部开发人员的投入(新的/改进的去马赛克/去拜耳化方法,系统噪声减少等)。

经验表明,LibRaw团队无法自行支持这些添加的代码,而贡献者也不提供他们建议的代码的支持和开发,最终导致这些代码被遗弃。因此,LibRaw团队以外的人实施的大部分修改被移至LibRaw-demosaic-pack-...,它们保持原始形式(但这些项目仍然存在于我们的GitHub中)。

因此,我们达到了本文第一部分所描述的当前状态。

版权和致谢

版权所有 (C) 2008-2024 LibRaw LLC

LibRaw使用Dave Coffin的dcraw.c工具中的代码(不包括RESTRICTED/GPL2代码):

版权所有 1997-2018 Dave Coffin, dcoffin a cybercom o net

LibRaw使用Jaceck Gozdz的DCB去马赛克代码,根据BSD许可证分发:

版权所有 (C) 2010, Jacek Gozdz (mailto:cuniek@kft.umcs.lublin.pl)

LibRaw使用Roland Karlsson的X3F工具源代码,根据BSD许可证授权:

版权所有 (c) 2010, Roland Karlsson (roland@proxel.se)

编辑推荐精选

音述AI

音述AI

全球首个AI音乐社区

音述AI是全球首个AI音乐社区,致力让每个人都能用音乐表达自我。音述AI提供零门槛AI创作工具,独创GETI法则帮助用户精准定义音乐风格,AI润色功能支持自动优化作品质感。音述AI支持交流讨论、二次创作与价值变现。针对中文用户的语言习惯与文化背景进行专门优化,支持国风融合、C-pop等本土音乐标签,让技术更好地承载人文表达。

QoderWork

QoderWork

阿里Qoder团队推出的桌面端AI智能体

QoderWork 是阿里推出的本地优先桌面 AI 智能体,适配 macOS14+/Windows10+,以自然语言交互实现文件管理、数据分析、AI 视觉生成、浏览器自动化等办公任务,自主拆解执行复杂工作流,数据本地运行零上传,技能市场可无限扩展,是高效的 Agentic 生产力办公助手。

lynote.ai

lynote.ai

一站式搞定所有学习需求

不再被海量信息淹没,开始真正理解知识。Lynote 可摘要 YouTube 视频、PDF、文章等内容。即时创建笔记,检测 AI 内容并下载资料,将您的学习效率提升 10 倍。

AniShort

AniShort

为AI短剧协作而生

专为AI短剧协作而生的AniShort正式发布,深度重构AI短剧全流程生产模式,整合创意策划、制作执行、实时协作、在线审片、资产复用等全链路功能,独创无限画布、双轨并行工业化工作流与Ani智能体助手,集成多款主流AI大模型,破解素材零散、版本混乱、沟通低效等行业痛点,助力3人团队效率提升800%,打造标准化、可追溯的AI短剧量产体系,是AI短剧团队协同创作、提升制作效率的核心工具。

seedancetwo2.0

seedancetwo2.0

能听懂你表达的视频模型

Seedance two是基于seedance2.0的中国大模型,支持图像、视频、音频、文本四种模态输入,表达方式更丰富,生成也更可控。

nano-banana纳米香蕉中文站

nano-banana纳米香蕉中文站

国内直接访问,限时3折

输入简单文字,生成想要的图片,纳米香蕉中文站基于 Google 模型的 AI 图片生成网站,支持文字生图、图生图。官网价格限时3折活动

扣子-AI办公

扣子-AI办公

职场AI,就用扣子

AI办公助手,复杂任务高效处理。办公效率低?扣子空间AI助手支持播客生成、PPT制作、网页开发及报告写作,覆盖科研、商业、舆情等领域的专家Agent 7x24小时响应,生活工作无缝切换,提升50%效率!

堆友

堆友

多风格AI绘画神器

堆友平台由阿里巴巴设计团队创建,作为一款AI驱动的设计工具,专为设计师提供一站式增长服务。功能覆盖海量3D素材、AI绘画、实时渲染以及专业抠图,显著提升设计品质和效率。平台不仅提供工具,还是一个促进创意交流和个人发展的空间,界面友好,适合所有级别的设计师和创意工作者。

图像生成热门AI工具AI图像AI反应堆AI工具箱AI绘画GOAI艺术字堆友相机
码上飞

码上飞

零代码AI应用开发平台

零代码AI应用开发平台,用户只需一句话简单描述需求,AI能自动生成小程序、APP或H5网页应用,无需编写代码。

Vora

Vora

免费创建高清无水印Sora视频

Vora是一个免费创建高清无水印Sora视频的AI工具

下拉加载更多