Hoku is an image processing software

Hoku is a Java-based software package to process multispectral image data sets to recover writings that have been damaged or erased. It is distributed free-of-charge, without warranty.

Dr. Keith T. Knox, creator of Hoku, independent imaging scientist and EMEL chief scientific advisor.
Hoku is a batch processing software package. Jobs are defined and parameters are set interactively with a graphical user interface, but jobs are run in batch mode until they conclude.

There are no interactive image processing methods available. You cannot touch-up or draw on an image with this software, but you can apply any of several image processing methods to enhance image details that otherwise are difficult to see.

How To

First time installation:

Hoku applications are available for the macOS, Windows, Linux. Download the Zip file containing the appropriate installation program from the following links. Double-click the downloaded Zip file to extract and decompress the installation folder.

Full instructions on how to install Hoku are contained in the “Instructions” text file within each folder. Installing Java on your computer is not needed for these applications. Hoku has the necessary Java runtime code embedded within it.

To install the new Hoku application on a Mac or Linux, you must have system administrator privileges on your computer. If you do not have such privileges, the software can be loaded for you a system administrator. Administrator privileges are not required on Windows.

Upgrade:

On Windows, to upgrade Hoku from an earlier version, you will need first to uninstall any previous Hoku that is currently installed. On the Mac, it will ask you if it can uninstall the previous version for you, as you install the new version.

Your existing data, on your Hoku Shelf and Hoku Desktop will not be changed. All of your existing data will be available to you in the new version of Hoku.

You can download older versions and see release notes and features on Hoku’s GitHub page:
https://github.com/Early-Manuscripts-Electronic-Library/Hoku

You may contact the author at the email address below if you have questions, need help on a specific problem, run into problems, or have comments or suggestions.

Keith Knox –

You can receive Hoku updates on new releases by registering with Hoku Google groups here:
https://groups.google.com/g/hokuusersgroup (requires Google account).

Learn Hoku

A Wiki / Tutorial that can help you familiarize with Hoku.
https://wiki.hoku.emelibrary.org/

Download Hoku

Hoku is available for a variety of platforms,
and on GitHub.

Latest Hoku version is:
v3.2, released June 2026.
New Features in version 3.2
An enhancement panel has been added to Show. It only appears when the input to Show is a single-band image, and is either floating point or 16-bit integer. An enhancement panel does not appear for an 8-bit input image. The enhancement panel lets the user try out three different methods of rendering the image. The options are fully described in Show's instructions.

What enhancements were found to work in Show can then be applied in Pack. There are new options for pack to linearly stretch from arbitrary minimum and maximum, or to perform a histogram equalization. In addition to these options, Show and Pack can also apply one of two colormaps to the image and adjust the end points to modify the rendition.

A new module, BandRatios, was added. This module takes in a multi-band image and forms the ratio of every band with every other band and outputs the result in a multi-band image where the different output bands are the ratio of two input bands. This routine gives the user the chance to inspect a large number of possible ratios that, in one operation, might help reveal the undertext. Be cautious in how you use this routine, because the number of output bands is approximately one half of the square of the number of input bands. For example, an input image with 10 bands would produce an output image with 45 bands, each containing a different ratio.

A number of bug fixes are included. One important one was to find language-independent methods to determine the RAM size in the initialization process. This fixes a bug that occurred in the Linux version. Now all three platforms are very broadly language independent.

Learn Hoku

A Wiki / Tutorial that can help you familiarize with Hoku.

License

Copyright (C) 2021, 2022, 2023, 2024, 2025, 2026  Keith T. Knox

This program is free software; you can redistribute it and/or modify it under the terms of the GNU General Public License as published by the Free Software Foundation; version 2 of the License.

This program is distributed in the hope that it will be useful, but WITHOUT ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU General Public License for more details.

You can read the GNU General Public License in LICENSE.txt. You may also obtain a copy of the license by writing to the Free Software Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA.

Keith Knox

June 2026