Problems adding modules



Hi Guys,

CellProfiler does not automatically detect new modules I have created. The CellProfiler code that fills the selectbox from which you can add new modules is hardcoded from CompileWizard.m. This looks to me like a minor mistake (funny, we had exactly the same problem almost 2 years ago :smile:

[code]function load_listbox(dir_path,AddModuleWindowHandles)
%%% Do not remove the BEGIN or END lines, below. They are used by CompileWizard.m.
%%% load_listbox code (replace function in CellProfiler.m)

CategoryList = {‘File Processing’ ‘Image Processing’ ‘Object Processing’ ‘Measurement’ ‘Other’};
FileProcessingFiles = {‘CreateBatchFiles’ ‘ExportToDatabase’ ‘ExportToExcel’ ‘GroupMovieFrames’ ‘LoadImages’ ‘LoadSingleImage’ ‘LoadText’ ‘PauseCellProfiler’ ‘RenameOrRenumberFiles’ ‘Restart’ ‘SaveImages’ ‘SplitOrSpliceMovie’ };
PreProcessingFiles = {‘Align’ ‘ApplyThreshold’ ‘Average’ ‘ColorToGray’ ‘Combine’ ‘CorrectIllumination_Apply’ ‘CorrectIllumination_Calculate’ ‘Crop’ ‘FindEdges’ ‘Flip’ ‘GrayToColor’ ‘InvertIntensity’ ‘MaskImage’ ‘Morph’ ‘OverlayOutlines’ ‘PlaceAdjacent’ ‘RescaleIntensity’ ‘Resize’ ‘Rotate’ ‘Smooth’ ‘SmoothKeepingEdges’ ‘Subtract’ ‘SubtractBackground’ ‘Tile’ };
ObjectProcessingFiles = {‘ClassifyObjects’ ‘ClassifyObjectsByTwoMeasurements’ ‘ConvertToImage’ ‘Exclude’ ‘ExpandOrShrink’ ‘FilterByObjectMeasurement’ ‘IdentifyObjectsInGrid’ ‘IdentifyPrimAutomatic’ ‘IdentifyPrimManual’ ‘IdentifySecondary’ ‘IdentifyTertiarySubregion’ ‘Relate’ };
MeasurementFiles = {‘CalculateMath’ ‘CalculateRatios’ ‘CalculateStatistics’ ‘MeasureCorrelation’ ‘MeasureImageAreaOccupied’ ‘MeasureImageGranularity’ ‘MeasureImageIntensity’ ‘MeasureImageSaturationBlur’ ‘MeasureObjectAreaShape’ ‘MeasureObjectIntensity’ ‘MeasureObjectNeighbors’ ‘MeasureTexture’ };
OtherFiles = {‘CreateWebPage’ ‘DefineGrid’ ‘DisplayDataOnImage’ ‘DisplayGridInfo’ ‘DisplayHistogram’ ‘DisplayImageHistogram’ ‘DisplayMeasurement’ ‘SendEmail’ ‘SpeedUpCellProfiler’ };
AddModuleWindowHandles.ModuleStrings{1} = FileProcessingFiles;
AddModuleWindowHandles.ModuleStrings{2} = PreProcessingFiles;
AddModuleWindowHandles.ModuleStrings{3} = ObjectProcessingFiles;
AddModuleWindowHandles.ModuleStrings{4} = MeasurementFiles;
AddModuleWindowHandles.ModuleStrings{5} = OtherFiles;

%%% Compiler: END load_listbox
%%% Do not remove the BEGIN or END lines, above. They are used by CompileWizard.m.[/code]

I’ll hack around it for now, but probably more people are facing the same problem.

Thanks for your help, hope you guys have nice holidays,
Berend Snijder


This is because, when we compile CellProfiler, CompileWizard will generate the necessary format based on the modules that we release. If you would like to add your own modules before compiling, simply add your new modules to CellProfiler.m before you compiling CellProfiler. Are you using CompileWizard to generate the properly formatted CellProfiler.m? If so, you may want to move your modules into the Modules folder. Then, CompileWizard will add them to the list.


Hi Martha,

Thanks for your help, but I think there may be a misunderstanding. I would like to add new modules to the developer version of cellprofiler without compiling it, and it is in the developer version of cellprofiler that the modules are hardcoded. Placing modules in the module directory does not result in them being displayed in your current developer version of cellprofiler.



Hello Berend,
I’ve fixed the error. Please download the corrected Matlab version (Developer’s Version) of CellProfiler. It is the same version as before (1.0.4942).

thanks for letting me know!