The Core Imaging Library (CIL) is an open-source versatile Python framework for solving inverse problems with special emphasis on imaging applications such as computed tomography (CT), using a plug-in architecture for data and operators, interfacing to toolboxes such as ASTRA, TIGRE and SIRF. A key component of CIL is its optimisation module enabling users to flexibly combine mathematical operators and functionals to form smooth and non-smooth optimisation problems and solve these with a range of first-order algorithms. The present work introduces an expansion of CIL with a new modular framework for stochastic optimisation, allowing researchers to easily use a variety of existing stochastic optimisation algorithms as well form new ones by combining modular building blocks. Users can flexibly configure algorithmic components, adapt to diverse problem structures, and experiment with various sampling and step size strategies. Rather than individual black-box implementations of each fixed algorithm with significant redundancies, our design is modular providing building blocks that can be flexibly combined to realise a wealth of algorithm instances. The framework is particularly well-suited for large-scale applications, where stochastic methods offer notable computational advantages over deterministic approaches. To demonstrate its versatility and practical utility, we present experiments on real-world datasets from imaging inverse problems, such as X-Ray CT and Positron Emission Tomography (PET) reconstruction. In summary, the presented software expansion aims to support the research community with a robust, extensible optimisation suite for developing, testing, and benchmarking stochastic methods for inverse problems.
翻译:核心成像库(Core Imaging Library, CIL)是一个开源的通用Python框架,专门用于求解逆问题,尤其侧重于计算机断层扫描(CT)等成像应用。它采用插件式架构处理数据和算子,并与ASTRA、TIGRE和SIRF等工具包进行接口对接。CIL的关键组件是其优化模块,使用户能够灵活组合数学算子与泛函,形成光滑与非光滑优化问题,并通过一系列一阶算法进行求解。本文介绍了CIL的扩展功能,新增了一个用于随机优化的模块化框架。该框架使研究者能够便捷地使用多种现有随机优化算法,并通过组合模块化构件来创建新算法。用户可以灵活配置算法组件,适应多样的问题结构,并尝试不同的采样与步长策略。我们的设计摒弃了传统方法中对每个固定算法进行带有大量冗余的独立黑箱式实现,转而采用模块化方式,提供可灵活组合的构建块,以实例化丰富的算法变体。该框架特别适用于大规模应用场景,在此类场景中,随机方法相比确定性方法具有显著的计算优势。为展示其通用性与实用价值,我们基于成像逆问题的真实数据集(例如X射线CT与正电子发射断层扫描PET重建)开展了实验。总之,此次软件扩展旨在为研究社区提供一个稳健且可扩展的优化套件,用于开发、测试和基准测试面向逆问题的随机方法。