March 5, 2010

ImageJ vs Pixcavator: update

Filed under: image processing/image analysis software, news — Peter @ 11:59 am

Two years ago I had a post here (follow-up) where I dared to compare these two programs. The reaction was unfavorable. The ImageJ ticket quoted below seems to indicate that there has been a slight shift.

Wayne [Rasband] had an idea for a command called “Analyze Image” that combines filtering, background correction, segmentation, particle analysis, etc. It would work something like the closed-source, Windows-only  Pixcavator program. As Wayne said, “It would not be an easy thing to create but it would be very popular with ImageJ users. 

I agree.

March 3, 2010

Update on CHomP, homology software

Filed under: image processing/image analysis software, mathematics, news — Peter @ 7:33 pm

Prof. Marian Mrozek  was kind enough to inform me about the coming update of CHomP in his email that I quote below:

The power of the software comes from much newer algorithms. Some of them are described in the papers:

  • M. Mrozek, P. Pilarczyk, N. Zelazna, Homology algorithm based on acyclic subspace, Computers and Mathematics with Applications, 55 (2008), 2395 –2412.
  • M. Mrozek, B. Batko, Coreduction homology algorithm, Discrete and Computational Geometry, 41 (2009), 96-118.
  • M. Mrozek, Cech Type Approach to Computing Homology of Maps
    Discrete and Computational Geometry, accepted
  • and a few more which are just in preparation.

We just finish[ed] writing a new, much stronger version of the software which will accept not only cubical complexes but also simplicial complexes and general CW complexes and will produce broader output, in particular homology generators, homology maps and persistence intervals for filtered complexes.

The new version of our software at first will be available from the webpage
of our CAPD group at Jagiellonian University, Krakow, Poland:
http://capd.ii.uj.edu.pl/.

Take a look also at our Homology Software page.

February 26, 2010

Analysis of RGB channels in color images

Filed under: image processing/image analysis software, updates — Peter @ 12:46 pm

 

RGB stands for Red, Green, and Blue. These are the “channels” in a color image. Each pixel has 3 numbers between 0 and 255 assigned to it.

  • (255,0,0) red,
  • (0,255,0) blue,
  • (0,0,255) green,
  • (255,255,0) yellow,
  • (255,0,255) magenta,
  • (0,255,255) cyan,
  • (g,g,g) gray, for any g,
  • (0,0,0) black,
  • (255,255,255) white

Every color image has three color channels – red, green and blue – and the image features you are after may be more pronounced with respect to one of them.

The channel-by-channel analysis allows one to consider each channel of the color image as a separate gray scale image and analyze them as needed. In Pixcavator just click a button in the Analysis tab for the channel you want.

In the example below, the circles are of pure red, green, and blue. As a result, the red circle which is (255,0,0) becomes 255 in the red channel. But 255 is equivalent to white in this gray scale image. So the red circle disappears in the red channel. Similarly, the green circle will disappear if you choose the green channel, etc.

This option is important for some applications such as microscopy. Different features are sometimes better revealed in different channels. Below is the original image with two clear, to the human eye, features: red walls and green “cells”.

Image:Epithelial-cells.jpg

Read about analysis of this image here: http://inperc.com/wiki/index.php?title=RGB_channels.

February 22, 2010

Plans for the site

Filed under: computer vision/machine vision/AI, mathematics, site, updates — Peter @ 3:41 pm

Most of the recent content has come from two main sources. First, I have been adding, as before, examples of image analysis from the users of Pixcavator. The second is the course I’ve been teaching since last fall: Introductory algebraic topology. I plan to add more content from the courses that I teach: Vector calculus (this summer), Introductory differential geometry (next fall), and maybe also something of lower level like Calc1 (next winter).

What is the goal? I would like the site to cover a big chunk of the math curriculum, interlinked within and with the computer vision / image analysis topics (see The Mathematics of Computer Vision). Even though the format is identical to Wikipedia the presentation is very different. This is a textbook: more details, more examples, exercises, etc. It can still be used for reference.

The content comes directly from my lectures. I use Tablet PC with Windows Journal. I started doing this last fall and I really love the results: bright, colorful slides, but with the spontaneity and flexibility of a chalkboard. Later I transcribe the lectures into text, put it on the site, and simply copy the illustrations. (Plus, I don’t have to deal with chalk on my shoes, pants, and lungs!) I think this approach has huge advantages over the common practice of simply posting video lectures online: searchability, cross-linking, speed of download, the person can read and work at his own pace, etc.

February 17, 2010

Measuring seedling area: an image analysis example

Q: We need to “measure all the seedlings area (by dividing by the number of them I can get indication to their area and structure, and other parameters I can get)… The area covered is 80*80cm.”

The screenshot shows the results of my experiment. Here the red contours surround the darker areas (vegetation) and green surround the lighter areas inside. So, the total coverage is 60 – 9 = 51%. Unfortunately, I was unable to separate the seedlings from the rest of the vegetation.

There is also work with ecological researchers to measure vegetation coverage but mostly with horizontal shots.

Other examples of image analysis

February 10, 2010

Hose measurements: an image analyis example

Q: We “need to verify the internal diameter, external diameter and the wall thickness between the ID, OD and the reinforcement yarn. One issue we have is that the wall is not always concentric. We have a minimum wall thickness specification so we would like to measure the wall thickness at the thinnest point to determine if it meets our spec or not.”  

I analyzed one of the images. I found fairly good contours that capture the inner (red) and outer (green) borders of the hose with the settings that you can see in the screenshot. The measurements for this contours can be seen in the Pixcavator’s output table.

The area inside the red contour is 130,966. Assuming this is a circle, the area is equal to π*R2, so the radius is

 R = √(130,966/3.14) = 204 pixels.

Then the external diameter is 408 pixels (one would have to do calibration at this point to convert to inches).

The area inside the green contour is 96,595. Assuming this is a circle, the radius is

 R = √(96,595/3.14) = 175 pixels.

Then the internal diameter is 350 pixels.

This suggests that the thickness of the wall should be 204-175=29 pixels. This is the average thickness of a ring with these measurements. To verify this number one can drop the assumption that these are circles and use the perimeters of the contours taken from the output table. Then

 average thickness
   = (area of the wall)/(average perimeter)
   = (130,966-96,595)/((1,547+1,283)/2)
   = 24 pixels.

A similar computation is presented here: Wall of a blood vessel.

Other examples of image analysis

January 31, 2010

Pixcavator 5.0 released

These are the new features in version 5.0.

  • Your choice of settings in the Output tab (the position of the sliders) is preserved when you load a new image to analyze.
  • Your choice of color channels in the Analysis tab is preserved when you load a new image to analyze. With these two the user can apply the same settings to a sequence of images if they are similar in nature. So, we get as close as possible to bulk processing without actually creating this complex feature.
  • Luminosity is a new color channel that you can choose. It is computed as a combination of the red, green, and blue values: 0.299*R + 0.587*G + 0.114*B. There are four channels now.
  • “Display channel” is a new option in the Analysis tab (just like the one in the Output tab). If you have chosen to shrink the image, the shrunken version is shown. This way you can preview all channels and decide which is the best – before committing to time consuming analysis.
  • The “Help” menu provides now the links to the help pages of this wiki. The user’s guide and the license are still provided with the program; they are to be found in the “Pixcavator” folder on your hard disk.
  • The actual processing time is shown when it’s done, and a beep is produced – but only if processing has taken more than 5 seconds.
  • Up to 2000 contours are now shown on the image and their statistics is also displayed. When there are more than 2000 contours, neither is shown.
  • A few bugs have been fixed, some remain.

Download here.

January 25, 2010

Topological data analysis

Filed under: computer vision/machine vision/AI, mathematics — Peter @ 1:11 pm

Below is the abstract of a paper I am working on.

Suppose we have conducted 1000 experiments with a set of 100 various measurements in each. Then each experiment is a string of 100 numbers or simply a vector of dimension 100. The result is a collection of disconnected 1000 points (aka point cloud) in the 100-dimensional Euclidean space.

It is impossible to visualize this data as any representation that one can see is lim

ited to dimension 3 (by using colors one gets 6, time – 7). Yet we still need to answer the same questions about the object behind the point cloud: is it one piece or more? Is there a tunnel or a void? And what about possible 100-dimensional topological features?

This is a common approach to the problem.

For a point cloud in a euclidean space, suppose we are given a threshold r so that any two points within r from each other are to be considered “close”. Then each pair of such points is connected by an edge. If three points are “close”, we add a face, etc. The result is a cell complex (more precisely, simplicial complex) that approximates the manifold M behind the point cloud.

   

We want to count the number of topological features in M by means of the Betti numbers: the number of connected components in M, the number tunnels, the number of voids, etc. This information is contained in the homology of the complex.

Further, to deal with noise and other uncertainty one needs to evaluate the significance of these topological features. For each value of the threshold r we build a separate cell complex, then combine the homology groups of these complexes in a single structure, and count the features with a high measure of robustness. This measure, called persistence, is the length of the interval of values of r for which each of the topological features is present.

Even more important than these “global” properties may be the local topology of the data. For example, in both of the images above the datasets are 3-dimensional but what’s behind is 2-dimensional (surfaces). This is called dimensionality reduction.

Most of the links here are dead but the article will be fixed by the time I am done with the topology course.

A more detailed outline is here: Homological methods in manifold learning (warning: heavy math).

January 13, 2010

Cluster size effects in molecular beam scattering: research that uses Pixcavator

Filed under: image processing/image analysis software, news — Peter @ 12:37 am

Image:Gold.JPG

A new research paper that uses Pixcavator:

Adsorption Dynamics of CO on Silica Supported Gold Clusters: Cluster Size Effects in Molecular Beam Scattering Experiments by E. Kadossov, U. Burghaus (Department of Chemistry, Biochemistry, and Molecular Biology, North Dakota State University), link, published in Catalysis Letters.

From the paper:

“We report on particle size effects in the adsorption dynamics (gas-surface energy transfer) of CO, studied by molecular beam scattering… the effect of supported nano-size gold metal clusters on gas-surface energy transfer processes (adsorption dynamics)… For the statistical analysis, commercial imaging analysis software (Pixcavator IA 4.2) was used.”

There are nine, to the best of my knowledge, research papers that used Pixcavator and gave credit.

January 11, 2010

Pixcavator Single Image Edition

This edition is a version of Pixcavator that comes with a preloaded image. Which means that it’s not really a single program but many – one for each image.

It is a single file “exe” program that does not require any installation. As such it can be used as an alternative to screenshots, for demos etc.

This edition has all the features of the standard edition except for image processing tools. This way you can choose different color channels for your analysis, experiment with the sliders, and save your work.

Most of image analysis examples will soon have links to the corresponding files. For a start, try to run these two examples:

In FF: choose “Save”, then “Run”. In IE: just choose “Run”.

We will also be able to create such files as a service to our customers.

January 5, 2010

Immunohistochemistry on lung biopsies: an image analysis example

Filed under: image processing/image analysis software, updates — Peter @ 3:24 pm

Q: “Immunohistochemistry was performed on my lung biopsies and now I have to analyse my staining. I would like to get a value for the colour intensity of my staining. … In the output of Pixcavator a mean value for grayness is given, but I don’t think all my brown staining is measured. Even if I adjust the threshold for size, not all objects are captured with a red or green contour.  ”

1. The difference in gray isn’t more pronounced because what is displayed is the average not the weighted average. So, one large dark object is outweighed by smaller, lighter ones. If you hover over objects (or look at the table) one at a time, you see a more noticeable difference. You can also save the data as a spreadsheet and compute the weighted averages. Certainly, if the difference is still too small, contrast enhancement would help.

2. It’s better to choose the green channel (or blue) than red. The features are much more distinct. If you click on “Display channel”, you’ll see the difference.

3. You are interested in dark objects only, red contours. So, the light ones only skew the averages. Click “Unmark light”.

4. The “Size” slider does not seem to reveal the features quite well. I used the simple thresholding instead, i.e., the “Intensity, dark” slider.

A screenshots is below. (This example may be somewhat similar: Measuring staining in the liver.)

More analysis here… 

Other examples of image analysis

December 28, 2009

A course in introductory algebraic topology

Filed under: computer vision/machine vision/AI, mathematics, news, updates — Peter @ 2:28 pm

This fall I have been teaching Topology I (Topology II next spring). I decided to emphasize algebraic topology and in fact started with it rather than point set topology which alone can take two semesters.

Outline
This is an introductory, two semester course on algebraic topology and its applications. It is intended for advanced undergraduate and beginning graduate students.

Part 1. Introduction to algebraic topology
Starts with topological issues in digital image analysis, informal introduction of homology

Part 2. Homology theory
Cubical complexes, their homology, and maps

Part 3. Overview of point-set topology
Minimized to the extreme (still could have cut even more)

Part 4. Homology groups
A more formal, group theory based, exposition

Part 5. Homology and uncertainty
Applications in computer vision, image analysis and data analysis

Part 6. Beyond homology
The fundamental group and cohomology

Also, I ran across this white paper from Hewlett-Packard: Algebraic topology for computer vision. Good review and an honest attempt to convince the practitioners to that this is something that they might need to know (good luck with that!).

December 20, 2009

Counting stained DNA: an image analysis example

Filed under: image processing/image analysis software, updates — Peter @ 1:18 pm

Q: we need to “count cell/dna etc from still microscopic image… Here we stained DNA …S-phase are in red and G-phase is in Blue. We want to count how many red are there and how many blue are there.”

I used Pixcavator and did a bit of experimenting with the first image. The red cells are easy to capture – in the red channel, 71 total.

Now the red cells are so bright that in the blue channel they are also present. So, here you see both red and blue and have to subtract:

 299 - 71 = 228 of the blue ones.

 Using subtraction here isn’t a perfect solution clearly. To separate red and blue one might try to filter the spots based on the size or intensity.

Image processing can help too – I simply removed the red using Photoshop Elements.

The total was 204. 

One day you’ll be able to use the true color analysis.

See examples of image analysis.

December 13, 2009

Pixcavator 4.3 released

The next version of Pixcavator has just been released (download). The update will help the user to create better image analysis reports with Excel.

These reports are based on the data in Pixcavator’s output table that lists all objects in the image as well as their  measurements and locations. The table, combined with the analysis settings, the statistical summary, and the frequencies of the values in the table, can be saved to hard disk in the form of a spreadsheet. This spreadsheet is a complete report of what has happened.

The frequencies allow one to create a histogram for each column, such as the size, to graphically illustrate the distribution of the values. One can also add images, format the text, etc. The end result may look like this:

For more details read Report generation in the wiki.

A note to our current customers: If you purchased Pixcavator within the last 12 months, i.e., after December 13, 2008, you are entitled to a free upgrade. You can download the new version here and then activate it with your current activation number. If your purchase dates before December 13, 2008, you can acquire the new version here. It goes without saying that the older versions of Pixcavator are to remain active indefinitely.

In the late December the price of Pixcavator will be increased to $245.

From other news, our site Computer Vision Primer has reached 268 articles with over 780 illustrations. The fastest growing category is image analysis examples which has reached 56.

December 6, 2009

Satellite image of Sicily: an image analysis example

I took this image analysis example from the site of Able Image Analyzer. It was easy to reproduce the results with Pixcavator.

Setting the contrast slider at 100 gives you good contours for both Sicily and the calibration bar. The length of the latter is see to be 217 pixels, so

 217 pixels  = 250 km.

The are of Sicily is see to be 18884 pixels, so

 the area = 18884*(250/217)^2 = 25064 sq km.

(Here 250/217 is the calibration factor). The actual area is 25706, so the error is about 2.5%.

 See other image analysis examples.

Next Page »