Changeset 7973


Ignore:
Timestamp:
04/15/12 03:57:42 (8 years ago)
Author:
avivekan
Message:
 
Location:
trunk/projects/flow-cytometry/src/main/java/loci/apps/flow
Files:
2 edited

Legend:

Unmodified
Added
Removed
  • trunk/projects/flow-cytometry/src/main/java/loci/apps/flow/Find_Particle_Areas.java

    r7972 r7973  
    228228         
    229229        public static float[] inWiscScanMode(ImagePlus imageToAnalyze, boolean isIntensity, boolean excludeOnEdge, double threshMin, int minSize){ 
    230                 float[] summedPixelAreasArray;           
     230                float[] summedPixelAreasArray;   
     231                Interpreter.batchMode=true; 
    231232                try{ 
    232233                        //if image is of intensity, do related calculations, else do brightfield calculations 
     
    244245                                IJ.run(imageToAnalyze, "Gaussian Blur...", "sigma=5"); 
    245246 
    246                                 IJ.runPlugIn(imageToAnalyze, "Auto Threshold", "method=Minimum white"); 
     247                                IJ.run(imageToAnalyze, "Auto Threshold", "method=Minimum white"); 
    247248 
    248249                                if(excludeOnEdge) IJ.run(imageToAnalyze, "Analyze Particles...", "size="+minSize+"-Infinity circularity=0.00-1.00 show=Masks display exclude clear include add"); 
     
    254255                        if(resTab.getCounter()>0){ 
    255256                                //get the values under the column "Area" 
     257                                imageToAnalyze.close(); 
    256258                                return summedPixelAreasArray = resTab.getColumn(resTab.getColumnIndex("Area")); 
    257259                        } 
  • trunk/projects/flow-cytometry/src/main/java/loci/apps/flow/FlowCyto.java

    r7972 r7973  
    99import ij.macro.Interpreter; 
    1010import ij.measure.ResultsTable; 
     11import ij.plugin.Duplicator; 
    1112import ij.plugin.frame.RoiManager; 
    1213import ij.process.ByteProcessor; 
     
    2930        private static double pixelMicronSquared; 
    3031        private static byte[] dummyData; 
     32        private static Duplicator dup; 
     33        private static float sumIntensityAreasHolder; 
    3134 
    3235 
     
    7477                        impIN=new ImagePlus(); 
    7578                        imp=new ImagePlus(); 
     79                        dup = new Duplicator(); 
    7680                        //              s_Date = new java.text.SimpleDateFormat("MM.dd.yyyy hh:mm:ss").format(new java.util.Date()); 
    7781                        byte[] r = new byte[256]; 
     
    223227                        if(isIntensityImage){                            
    224228                                try{ 
    225                                         summedPixelAreasArray=Find_Particle_Areas.inWiscScanMode(impIN, true, excludeOnEdge, thresholdMin, sizeMin); 
     229                                        summedPixelAreasArray=Find_Particle_Areas.inWiscScanMode(dup.run(impIN, nSlicesIN, nSlicesIN), true, excludeOnEdge, thresholdMin, sizeMin); 
    226230 
    227231                                        //-----------------------FOR DEBUG PURPOSES--------------------// 
     
    230234 
    231235                                }catch(Exception e){  
    232                                         summedPixelAreasArray=Find_Particle_Areas.inWiscScanMode(imp, true, excludeOnEdge, thresholdMin, sizeMin); 
     236                                        summedPixelAreasArray=Find_Particle_Areas.inWiscScanMode(dup.run(imp, nSlices, nSlices), true, excludeOnEdge, thresholdMin, sizeMin); 
    233237 
    234238                                        //-----------------------FOR DEBUG PURPOSES--------------------// 
     
    240244                        else { 
    241245                                try{ 
    242                                         summedPixelAreasArray=Find_Particle_Areas.inWiscScanMode(impBF, false, excludeOnEdge, thresholdMin, sizeMin); 
     246                                        summedPixelAreasArray=Find_Particle_Areas.inWiscScanMode(dup.run(impBF, nSlicesBF, nSlicesBF), false, excludeOnEdge, thresholdMin, sizeMin); 
    243247 
    244248                                        //-----------------------FOR DEBUG PURPOSES--------------------// 
     
    247251 
    248252                                }catch(Exception e){ 
    249                                         summedPixelAreasArray=Find_Particle_Areas.inWiscScanMode(imp, false, excludeOnEdge, thresholdMin, sizeMin); 
     253                                        summedPixelAreasArray=Find_Particle_Areas.inWiscScanMode(dup.run(imp, nSlices, nSlices), false, excludeOnEdge, thresholdMin, sizeMin); 
    250254 
    251255                                        //-----------------------FOR DEBUG PURPOSES--------------------// 
     
    293297 
    294298        @SuppressWarnings("static-access") 
    295         public static float getSumOfParticleAreas(boolean isIntensityImage, boolean excludeOnEdge, double thresholdMin, int sizeMin){ 
     299        public static boolean getRatioBoolean(boolean isIntensityImage, boolean excludeOnEdge, double thresholdMin, int sizeMin, float compareTOLow, float compareTOHigh){ 
    296300 
    297301                //-----------------------FOR DEBUG PURPOSES--------------------// 
     
    299303                IJ.log("Pixel areas summing method started on slice "+nSlicesIN+" at \t \t \t"+ ((System.nanoTime() - initialTime)/1000000) +"ms"); 
    300304                //-------------------------------------------------------------// 
    301                 float summedPixelAreas=0; 
     305 
    302306                float[] summedPixelAreasArray; 
    303307                Interpreter.batchMode=true; 
     
    306310                        if(isIntensityImage){                            
    307311                                try{ 
    308                                         summedPixelAreasArray=Find_Particle_Areas.inWiscScanMode(impIN, true, excludeOnEdge, thresholdMin, sizeMin); 
     312                                        sumIntensityAreasHolder=0; 
     313                                        summedPixelAreasArray=Find_Particle_Areas.inWiscScanMode(dup.run(impIN, nSlicesIN, nSlicesIN), true, excludeOnEdge, thresholdMin, sizeMin); 
     314                                        for(int i=0; i<summedPixelAreasArray.length; i++){ 
     315                                                sumIntensityAreasHolder+=summedPixelAreasArray[i]; 
     316                                        }        
    309317 
    310318                                        //-----------------------FOR DEBUG PURPOSES--------------------// 
    311319                                        IJ.log("plugin finished on intensity image "+nSlicesIN+" in \t \t \t"+ ((System.nanoTime() - initialTime)/1000000) +"ms"); 
    312320                                        //-------------------------------------------------------------// 
     321                                        //-----------------------FOR DEBUG PURPOSES--------------------// 
     322                                        IJ.log("_"); 
     323                                        //-------------------------------------------------------------// 
     324 
     325                                        return false; 
    313326 
    314327                                }catch(Exception e){  
    315                                         summedPixelAreasArray=Find_Particle_Areas.inWiscScanMode(imp, true, excludeOnEdge, thresholdMin, sizeMin); 
     328                                        summedPixelAreasArray=Find_Particle_Areas.inWiscScanMode(dup.run(imp, nSlices, nSlices), true, excludeOnEdge, thresholdMin, sizeMin); 
     329                                        for(int i=0; i<summedPixelAreasArray.length; i++){ 
     330                                                sumIntensityAreasHolder+=summedPixelAreasArray[i]; 
     331                                        } 
    316332 
    317333                                        //-----------------------FOR DEBUG PURPOSES--------------------// 
    318334                                        IJ.log("plugin finished on ISLET DEFAULT image "+nSlicesIN+" in \t \t \t"+ ((System.nanoTime() - initialTime)/1000000) +"ms"); 
    319335                                        //-------------------------------------------------------------// 
    320  
     336                                        //-----------------------FOR DEBUG PURPOSES--------------------// 
     337                                        IJ.log("_"); 
     338                                        //-------------------------------------------------------------// 
     339 
     340                                        return false; 
    321341                                } 
    322342                        } 
    323343                        else { 
    324                                 try{ 
    325                                         summedPixelAreasArray=Find_Particle_Areas.inWiscScanMode(impBF, false, excludeOnEdge, thresholdMin, sizeMin); 
    326  
    327                                         //-----------------------FOR DEBUG PURPOSES--------------------// 
    328                                         IJ.log("plugin finished on brightfield image "+nSlicesBF+" in \t \t \t"+ ((System.nanoTime() - initialTime)/1000000) +"ms"); 
    329                                         //-------------------------------------------------------------// 
     344                                try{             
     345                                        float sumBFPixelAreas=0; 
     346                                        summedPixelAreasArray=Find_Particle_Areas.inWiscScanMode(dup.run(impBF, nSlicesBF, nSlicesBF), false, excludeOnEdge, thresholdMin, sizeMin); 
     347                                        for(int i=0; i<summedPixelAreasArray.length; i++){ 
     348                                                sumBFPixelAreas+=summedPixelAreasArray[i]; 
     349                                        } 
     350                                        if((sumBFPixelAreas!=0) && ((sumIntensityAreasHolder/sumBFPixelAreas) >= compareTOLow) && ((sumIntensityAreasHolder/sumBFPixelAreas) <= compareTOHigh)){ 
     351 
     352                                        //-----------------------FOR DEBUG PURPOSES--------------------// 
     353                                        IJ.log("plugin finished -TRUE- on brightfield ratio image "+nSlicesBF+" in \t \t \t"+ ((System.nanoTime() - initialTime)/1000000) +"ms"); 
     354                                        //-------------------------------------------------------------// 
     355                                        //-----------------------FOR DEBUG PURPOSES--------------------// 
     356                                        IJ.log("_"); 
     357                                        //-------------------------------------------------------------// 
     358                                         
     359                                        return true; 
     360                                        } 
    330361 
    331362                                }catch(Exception e){ 
    332                                         summedPixelAreasArray=Find_Particle_Areas.inWiscScanMode(imp, false, excludeOnEdge, thresholdMin, sizeMin); 
    333  
    334                                         //-----------------------FOR DEBUG PURPOSES--------------------// 
    335                                         IJ.log("plugin finished on ISLET DEFAULT image "+nSlicesIN+" in \t \t \t"+ ((System.nanoTime() - initialTime)/1000000) +"ms"); 
    336                                         //-------------------------------------------------------------// 
     363                                        float sumBFPixelAreas=0; 
     364                                        summedPixelAreasArray=Find_Particle_Areas.inWiscScanMode(dup.run(imp, nSlices, nSlices), false, excludeOnEdge, thresholdMin, sizeMin); 
     365                                        for(int i=0; i<summedPixelAreasArray.length; i++){ 
     366                                                sumBFPixelAreas+=summedPixelAreasArray[i]; 
     367                                        } 
     368                                        if((sumBFPixelAreas!=0) && ((sumIntensityAreasHolder/sumBFPixelAreas) >= compareTOLow) && ((sumIntensityAreasHolder/sumBFPixelAreas) <= compareTOHigh)){ 
     369 
     370                                        //-----------------------FOR DEBUG PURPOSES--------------------// 
     371                                        IJ.log("plugin finished TRUE on ISLET DEFAULT image "+nSlicesIN+" in \t \t \t"+ ((System.nanoTime() - initialTime)/1000000) +"ms"); 
     372                                        //-------------------------------------------------------------// 
     373                                        //-----------------------FOR DEBUG PURPOSES--------------------// 
     374                                        IJ.log("_"); 
     375                                        //-------------------------------------------------------------// 
     376                                         
     377                                        return true; 
     378                                        } 
    337379 
    338380                                } 
    339381                        } 
    340                          
    341                         for(int i=0; i<summedPixelAreasArray.length; i++){ 
    342                                 summedPixelAreas+=summedPixelAreasArray[i]; 
    343                         }                        
     382 
    344383                }catch (Exception e){ 
    345384                        IJ.log("Problem in getting particle areas"); 
    346385                        IJ.log(e.getMessage()); 
    347386                } 
    348                  
     387 
    349388                //-----------------------FOR DEBUG PURPOSES--------------------// 
    350                 IJ.log("pixel areas sum calculated in \t \t \t"+ ((System.nanoTime() - initialTime)/1000000) +"ms"); 
     389                IJ.log("plugin finished FALSE on brightfield ratio image "+nSlicesBF+" in \t \t \t"+ ((System.nanoTime() - initialTime)/1000000) +"ms"); 
    351390                //-------------------------------------------------------------// 
    352391                //-----------------------FOR DEBUG PURPOSES--------------------// 
    353392                IJ.log("_"); 
    354393                //-------------------------------------------------------------// 
    355                  
    356                 return summedPixelAreas; 
     394 
     395                return false; 
    357396        } 
    358397 
Note: See TracChangeset for help on using the changeset viewer.