Code-free cloud computing service to facilitate rapid biomedical digital signal processing and algorithm development. (November 2021) - Jennings, Michael R.; Turner, Colin; Bond, Raymond R.; Kennedy, Alan; Thantilage, Ranul; Kechadi, Mohand Tahar; Le-Khac, Nhien-An; McLaughlin, James; Finlay, Dewar D.
Highlights: Development of biosignal digital signal processing algorithms by independent researches has led to fragmentation and lack of reuse. Server-side processing system to facilitate code-free development. Reduces the barrier-to-entry into biomedical digital signal processing for clinicians or inexperienced programmers. Reusable code repository and open-source framework encourages reproducibility. Multiple programming languages and file types supported via API use. Abstract: Background and Objective: Cloud computing has the ability to offload processing tasks to a remote computing resources. Presently, the majority of biomedical digital signal processing involves a ground-up approach by writing code in a variety of languages. This may reduce the time a researcher or health professional has to process data, while increasing the barrier to entry to those with little or no software development experience. In this study, we aim to provide a service capable of handling and processing biomedical data via a code-free interface. Furthermore, our solution should support multiple file formats and processing languages while saving user inputs for repeated use. Methods: A web interface via the Python-based Django framework was developed with the potential to shorten the time taken to create an algorithm, encourage code reuse, and democratise digital signal processing tasks for non-technical users using a code-free user interface. A user can upload data, create an algorithm and download the result. Using discrete functions and multi-lingual scripts (e.g. MATLAB or Python), the user can manipulate data rapidly in a repeatable manner. Multiple data file formats are supported by a decision-based file handler and user authentication-based storage allocation method. Results: The proposed system has been demonstrated as effective in handling multiple input data types in various programming languages, including Python and MATLAB. This, in turn, has the potential to reduce currently experienced bottlenecks in cross-platform development of bio-signal processing algorithms. The source code for this system has been made available to encourage reuse. A cloud service for digital signal processing has the ability to reduce the apparent complexity and abstract the need to understand the intricacies of signal processing. Conclusion: We have introduced a web-based system capable of reducing the barrier to entry for inexperienced programmers. Furthermore, our system is reproducable and scalable for use in a variety of clinical or research fields.