Welcome to the Core Optical blog! In this – our very first blog post – I’d like to introduce our upcoming product: PrecisionImage.NET.

If you’ve had a chance to look around the website a little then hopefully you have a pretty good idea of what the SDK is and how it can be used. Maybe you just happened across the blog “organically” while searching for image processing tools for the .NET framework and now you’re curious. Well, read on to discover more.

So…first things first. What exactly is PrecisionImage.NET? Well, the official product description is something along the lines of “PrecisionImage.NET is an SDK for technical imaging professionals and businesses focusing on the .NET framework and WPF.” As an imaging scientist, I prefer to think of it as the toolkit I wish I had all along.

I’m also a .NET guy.

To me, the .NET framework strikes a good balance between productivity and power. Maybe there was a greater emphasis on productivity versus power when Microsoft conceived of .NET, and maybe that emphasis still exists today. I happen to think so. After all, It’s the reason I use .NET. You just can’t beat that oceanic framework when it comes to developer productivity and time-to-market.

That’s not to say it doesn’t suffer from a few gaps in its functionality. WinForms gave us some basic image processing classes and types but they were aimed at the more basic open/display/save crowd of developers and weren’t very suitable for someone who wanted to do something more analytical in nature.

But when WPF was introduced along with the underlying WIC (Windows Imaging Component) framework, that all changed. Suddenly, .NET developers doing image processing had access to built-in encoders/decoders for everything from 4-bit indexed types all the way up to 128-bit floating point HDR images. Best of all, the whole thing is extensible so that it can support proprietary image formats. When I saw these features I knew WPF/WIC would form the perfect foundation for high-power scientific/technical desktop applications implementing the most modern user interfaces. The only thing it was (and is still) lacking was a comprehensive computational back-end that enables sophisticated processing chains and workflows. That’s where PrecisionImage.NET comes in.

In terms of release, where does the product stand? We’re currently working on adding the GPU branch of the frequency domain processing. We’re estimating that to be done in January 2013, at which point it will be feature complete and ready for release. At the same time we’ll also be adding video blog entries introducing the basic concepts of how to use PrecisionImage.NET. On our list of upcoming videos are tutorials on using the toolkit to process and display data from the Kinect sensor, creating an image processing scripting environment using the Microsoft Roslyn compiler-as-a-service system and PrecisionImage.NET, as well as a variety of processing case studies and implementation strategies to get the most out of PrecisionImage.NET.

So please stay tuned, and don’t be shy with the feedback!