CellProfiler-Analyst icon indicating copy to clipboard operation
CellProfiler-Analyst copied to clipboard

Check the basic functionality of the Normalization Tool

Open AnneCarpenter opened this issue 9 years ago • 0 comments

I'm using CPA 2.2.1 with the example database/properties file. I'm reporting a single bug but I think overall the tool could use a good check for functionality.

Upon selecting Tools > Normalization Tool, the window appears as it should. I choose Select all columns. I cannot click Perform Normalization (it's grayed out) which is a bug but not a serious one because you can click ImageNumber (the first feature in the list) and re-click it, and then Perform Normalization becomes active. So far, so good.

Upon clicking Perform Normalization, there is a warning telling you that feature 7's text is too long (I forget the exact wording). You can click cancel and go back to the feature list and deselect the 7th feature, Image_Nuclei_NumberOfMergedObjects_Nuclei_NumberOfMergedObjects and click perform normalization again. That all works well.

The problem is that you then see a window that says "Computing normalized values" and it reads "normalizing column 30 of 650", and an error pops up as pasted below.

FWIW, feature number 30 is Image_SaturationBlur_OrigpH3_FocusScore but not sure if that is specifically relevant to the error. Of note, that particular column name is not unusually long and column 28 is the very similar Image_SaturationBlur_OrigDNA_FocusScore yet does not seem to trigger this error.

An error occurred in the program: UnboundLocalError: local variable 'res' referenced before assignment

Traceback (most recent call last): File "/Applications/CellProfiler Analyst.app/Contents/Resources/lib/python2.7/cpa/normalizationtool.py", line 358, in on_do_normalization self.do_normalization() File "/Applications/CellProfiler Analyst.app/Contents/Resources/lib/python2.7/cpa/normalizationtool.py", line 543, in do_normalization norm_data = norm.do_normalization_step(norm_data, **d) File "/Applications/CellProfiler Analyst.app/Contents/Resources/lib/python2.7/cpa/normalize.py", line 39, in do_normalization_step output_data = do_normalization(input_data, aggregate_type) File "/Applications/CellProfiler Analyst.app/Contents/Resources/lib/python2.7/cpa/normalize.py", line 138, in do_normalization return res

AnneCarpenter avatar Sep 06 '16 20:09 AnneCarpenter