------------------------------------------------------------------------ r59 | sauter | 2009-07-13 20:30:20 -0700 (Mon, 13 Jul 2009) | 1 line Changed paths: M /trunk/spot_analysis/signal_strength.py Introspection of spotfinder object through API. ------------------------------------------------------------------------ r58 | sauter | 2009-07-13 09:26:12 -0700 (Mon, 13 Jul 2009) | 1 line Changed paths: M /trunk/spot_analysis/signal_strength.py Spot signal analysis should not raise error if the number of spots is zero. ------------------------------------------------------------------------ r57 | sauter | 2009-07-09 19:59:21 -0700 (Thu, 09 Jul 2009) | 1 line Changed paths: M /trunk/libdistl.cc Protect against use of nth_element() for zero-length arrays: cases with either no pixels in the resolution shell, or no diffraction spots. ------------------------------------------------------------------------ r56 | sauter | 2009-07-09 19:48:45 -0700 (Thu, 09 Jul 2009) | 1 line Changed paths: M /trunk/scanbox.h Without need for any outside input, generate scanbox tiling whether or not the image is a full Pilatus frame or a single horizontal slice. ------------------------------------------------------------------------ r55 | sauter | 2009-07-02 17:05:47 -0700 (Thu, 02 Jul 2009) | 1 line Changed paths: M /trunk/libdistl.cc M /trunk/libdistl.h Expose spotfinder submethods individually to Python for fine-grained profiling and testing. ------------------------------------------------------------------------ r54 | sauter | 2009-07-02 14:18:47 -0700 (Thu, 02 Jul 2009) | 1 line Changed paths: M /trunk/libdistl.cc For very lightly exposed Pilatus datasets such as the insulin test, it is crucial that pixel values of zero not be treated as underloads. Zero values need to be included in the background plane calculation, to avoid spotfinder identifying numerous false peaks. ------------------------------------------------------------------------ r53 | sauter | 2009-05-08 15:18:52 -0700 (Fri, 08 May 2009) | 1 line Changed paths: M /trunk/libdistl.cc M /trunk/libdistl.h A /trunk/scanbox.h scanbox tiling now covers the entire requested window; also the Pilatus tiling covers only the active pixels ------------------------------------------------------------------------ r52 | sauter | 2009-05-07 15:31:33 -0700 (Thu, 07 May 2009) | 1 line Changed paths: M /trunk/libdistl.cc Reorganization for future compatibility with OpenMP ------------------------------------------------------------------------ r51 | sauter | 2008-09-09 15:21:01 -0700 (Tue, 09 Sep 2008) | 1 line Changed paths: M /trunk/spot_shapes.h enforce const correctness ------------------------------------------------------------------------ r50 | sauter | 2008-06-12 16:42:53 -0700 (Thu, 12 Jun 2008) | 1 line Changed paths: A /trunk/__init__.py A /trunk/command_line A /trunk/command_line/__init__.py A /trunk/command_line/signal_strength.py M /trunk/libdistl.h M /trunk/spot.cc A /trunk/spot_analysis A /trunk/spot_analysis/__init__.py A /trunk/spot_analysis/signal_strength.py A /trunk/spot_analysis/wrappers.py Signal strength characterization for raw images ------------------------------------------------------------------------ r49 | sauter | 2006-12-14 20:32:13 -0800 (Thu, 14 Dec 2006) | 2 lines Changed paths: M /trunk/libdistl.cc Expose distl pixel maxima so they can be rendered in the WebIce picture. ------------------------------------------------------------------------ r48 | sauter | 2006-12-01 13:41:22 -0800 (Fri, 01 Dec 2006) | 2 lines Changed paths: M /trunk/background_plane.cpp M /trunk/background_plane.h M /trunk/libdistl.cc M /trunk/libdistl.h Satisfy -Wall warnings for unix gcc 4.1 ------------------------------------------------------------------------ r47 | sauter | 2006-11-13 23:22:05 -0800 (Mon, 13 Nov 2006) | 4 lines Changed paths: M /trunk/libdistl.h M /trunk/spot_shapes.h A general indication of skewness, not a rigorous calculation Formula gives max-pixel to center-of-mass distance as fraction of semi-major axis Important:integer truncation prevents overestimation due to discrete image sampling ------------------------------------------------------------------------ r46 | sauter | 2006-11-13 22:44:46 -0800 (Mon, 13 Nov 2006) | 2 lines Changed paths: M /trunk/libdistl.h Remove the eccentricity function as it has now been replaced with model_eccentricity. ------------------------------------------------------------------------ r45 | sauter | 2006-10-27 23:38:46 -0700 (Fri, 27 Oct 2006) | 3 lines Changed paths: M /trunk/spot.cc M /trunk/spot_shapes.h Bragg spots now modelled by an intrinsically 2-dimensional model of the inertia tensor. ------------------------------------------------------------------------ r44 | sauter | 2006-10-27 23:08:38 -0700 (Fri, 27 Oct 2006) | 3 lines Changed paths: M /trunk/spot_shapes.h development step, demonstrating the equivalence of principal axis 2D and 3D treatments, prior to switching over to the 2D treatment exclusively. ------------------------------------------------------------------------ r43 | sauter | 2006-10-26 14:04:21 -0700 (Thu, 26 Oct 2006) | 4 lines Changed paths: M /trunk/libdistl.h M /trunk/spot.cc M /trunk/spot_shapes.h Pickling interface for spotlists (version 2) now records a) the total pixel sum (background subtracted), b) center of mass x,y, c) inertia tensor eigenvalues, and d) principle axes. ------------------------------------------------------------------------ r42 | sauter | 2006-10-23 17:11:39 -0700 (Mon, 23 Oct 2006) | 6 lines Changed paths: M /trunk/libdistl.h in the spot interface, functions x() and y() are changed to maxpxl_x() and maxpxl_y(). This emphasizes that these are integer pixel positions of the spot's local maximum, as opposed to other kinds of position like center of mass. More descriptive names easier for code maintenance. ------------------------------------------------------------------------ r41 | sauter | 2006-10-23 16:50:40 -0700 (Mon, 23 Oct 2006) | 2 lines Changed paths: M /trunk/libdistl.h M /trunk/spot.cc A /trunk/spot_shapes.h Add DISTL code to fit an ellipse model to the inertia tensor for each spot ------------------------------------------------------------------------ r40 | sauter | 2006-07-26 15:14:39 -0700 (Wed, 26 Jul 2006) | 2 lines Changed paths: M /trunk/libdistl.cc Consistency with SSRL CVS code base. ------------------------------------------------------------------------ r39 | sauter | 2006-07-26 12:26:47 -0700 (Wed, 26 Jul 2006) | 6 lines Changed paths: M /trunk/libdistl.cc it appears that beam_x/y must be assigned as integers to support array indexing in subsequent steps. However, it is dangerous to use static_cast because it truncates, instead of rounding to the nearest integer. Introduce the iround() function to correct this. ------------------------------------------------------------------------ r38 | sauter | 2006-06-16 00:16:01 -0700 (Fri, 16 Jun 2006) | 2 lines Changed paths: M /trunk/libdistl.cc Bugfix: Avoid a divide-by-zero if the signal is flat ------------------------------------------------------------------------ r37 | sauter | 2006-05-28 22:40:16 -0700 (Sun, 28 May 2006) | 7 lines Changed paths: M /trunk/libdistl.cc 1) Replace the problematic background_plane_stats, along with the clumsy macros, with the new corrected_backplane class; in parallel with the SSRL implementation. 2) Use a speedup factor of 2; sampling 1 in 4 points to give a reasonably good background plane correction. A factor of 3 is too sparse and seems to degrade the regression results. ------------------------------------------------------------------------ r36 | sauter | 2006-05-28 20:23:56 -0700 (Sun, 28 May 2006) | 3 lines Changed paths: M /trunk/libdistl.cc A much more efficient way to implement separate algorithms for circular and square images. ------------------------------------------------------------------------ r35 | sauter | 2006-05-25 17:00:23 -0700 (Thu, 25 May 2006) | 2 lines Changed paths: M /trunk/libdistl.cc slight correction ------------------------------------------------------------------------ r34 | sauter | 2006-05-25 16:36:31 -0700 (Thu, 25 May 2006) | 10 lines Changed paths: M /trunk/libdistl.cc Rollback two changes from recent days: get_underload(): in the safety fallback, there is now a separate procedure for circular images wherein the pixel analysis is confined to the inscribed circle. pxlclassify(): the box size and untouched margin width parameters are no longer dynamically calculated. However, adjacent boxes are still forced to be non-overlapping. ------------------------------------------------------------------------ r33 | sauter | 2006-05-24 11:11:14 -0700 (Wed, 24 May 2006) | 3 lines Changed paths: M /trunk/libdistl.cc M /trunk/libdistl.h Detect whether the image is circular, and if so, do not attempt to classify pixels on the inactive periphery. ------------------------------------------------------------------------ r32 | sauter | 2006-05-24 11:07:39 -0700 (Wed, 24 May 2006) | 3 lines Changed paths: M /trunk/libdistl.cc change the pxlclassify algorithm so that 1) boxes do not overlap and 2) pxlclassify_scanbox is called exactly once. ------------------------------------------------------------------------ r31 | sauter | 2006-05-19 16:29:44 -0700 (Fri, 19 May 2006) | 2 lines Changed paths: M /trunk/libdistl.cc M /trunk/libdistl.h revisions to get_underload leading to compatibility with SSRL ------------------------------------------------------------------------ r30 | sauter | 2006-05-18 16:03:55 -0700 (Thu, 18 May 2006) | 2 lines Changed paths: M /trunk/libdistl.cc M /trunk/libdistl.h Reorganization leading to SSRL compatibility ------------------------------------------------------------------------ r29 | sauter | 2006-05-18 15:34:31 -0700 (Thu, 18 May 2006) | 2 lines Changed paths: M /trunk/libdistl.cc M /trunk/libdistl.h A /trunk/spot.cc A /trunk/spot_types.h Reorganization leading toward SSRL compatibility. ------------------------------------------------------------------------ r28 | sauter | 2006-05-17 13:28:49 -0700 (Wed, 17 May 2006) | 2 lines Changed paths: M /trunk/libdistl.cc More efficient way to call boxmean(); half as many calls. ------------------------------------------------------------------------ r27 | sauter | 2006-05-17 13:27:16 -0700 (Wed, 17 May 2006) | 2 lines Changed paths: M /trunk/libdistl.h Useful macros for code development ------------------------------------------------------------------------ r26 | sauter | 2006-04-07 13:54:02 -0700 (Fri, 07 Apr 2006) | 8 lines Changed paths: M /trunk/libdistl.cc M /trunk/libdistl.h A new preferences option "distl_report_overloads" allows distl to report candidate Bragg spots that contain saturation overloads. LABELIT takes the DISTL candidates, performs the usual ice ring and resolution filters, and then counts the number of remaining overloaded spots (and reports them in stats_distl). The overloaded spots are then removed prior to auto- indexing. Previously "distl_report_overloads" was always False; now it is True by default. ------------------------------------------------------------------------ r25 | sauter | 2006-04-07 13:40:59 -0700 (Fri, 07 Apr 2006) | 3 lines Changed paths: M /trunk/libdistl.cc throw an exception if the distl scanbox increases too much; want to trap such cases & possibly revise code accordingly in the future. ------------------------------------------------------------------------ r24 | sauter | 2006-03-16 17:31:50 -0800 (Thu, 16 Mar 2006) | 2 lines Changed paths: M /trunk/libdistl.h Fix a syntax error flagged by the Windows compiler ------------------------------------------------------------------------ r23 | sauter | 2006-03-16 17:09:12 -0800 (Thu, 16 Mar 2006) | 2 lines Changed paths: M /trunk/libdistl.cc Unused code removed ------------------------------------------------------------------------ r22 | sauter | 2006-03-06 11:40:11 -0800 (Mon, 06 Mar 2006) | 2 lines Changed paths: M /trunk/libdistl.cc Simple bug fix ------------------------------------------------------------------------ r21 | sauter | 2006-03-06 11:00:35 -0800 (Mon, 06 Mar 2006) | 4 lines Changed paths: M /trunk/libdistl.cc M /trunk/libdistl.h pixel values are now contained in the Distl::constmat container. The memory is managed by the image reader, in this case iotbx/detectors. Distl no longer has a second copy of the image data. ------------------------------------------------------------------------ r20 | sauter | 2006-03-03 21:17:57 -0800 (Fri, 03 Mar 2006) | 5 lines Changed paths: M /trunk/libdistl.cc M /trunk/libdistl.h a. wrapper of SSRL's spot type has been moved to the Distl namespace. b. list pattern to be changed to vector semantics, for compatibility with LBNL's array_family. Change push_front to push_back. c. To encapsulate this change, use a typedef for Distl::spot::point_list_t. ------------------------------------------------------------------------ r19 | sauter | 2006-03-02 19:55:53 -0800 (Thu, 02 Mar 2006) | 4 lines Changed paths: M /trunk/libdistl.cc Migration to current SSRL Distl. Take away unused calculations in summary() Change the dependency on centerresol to peakresol. This should have a small but unimportant effect on the Method 1 resolution calculation. ------------------------------------------------------------------------ r18 | sauter | 2006-03-02 19:40:11 -0800 (Thu, 02 Mar 2006) | 2 lines Changed paths: M /trunk/libdistl.h Migration to present SSRL Distl namespace. Implement Distl::point. This change adds member variables and should have no effect. ------------------------------------------------------------------------ r17 | sauter | 2006-03-02 18:07:22 -0800 (Thu, 02 Mar 2006) | 3 lines Changed paths: M /trunk/background_plane.cpp M /trunk/background_plane.h D /trunk/libdiffspot.cc D /trunk/libdiffspot.h A /trunk/libdistl.cc A /trunk/libdistl.h For forward compatibility, migrate from the libdiffspot/Diffspot namespace to the newly-introduced libdistl/Distl namespace. ------------------------------------------------------------------------ r16 | sauter | 2006-03-02 16:52:18 -0800 (Thu, 02 Mar 2006) | 2 lines Changed paths: M /trunk/libdiffspot.cc change the way debugging messages are displayed. ------------------------------------------------------------------------ r15 | sauter | 2006-02-19 13:16:39 -0800 (Sun, 19 Feb 2006) | 5 lines Changed paths: M /trunk/libdiffspot.cc Important bugfix. With the introduction of the background plane correction, the pixelintensity (corrected & normalized) can be positive even if the raw pixel value is zero. This led to a divide-by-zero error for one case on the tru64 platform. ------------------------------------------------------------------------ r14 | sauter | 2006-02-17 19:22:23 -0800 (Fri, 17 Feb 2006) | 2 lines Changed paths: M /trunk/background_plane.h Compatibility with more pedantic compilers ------------------------------------------------------------------------ r13 | sauter | 2006-02-17 16:25:00 -0800 (Fri, 17 Feb 2006) | 5 lines Changed paths: A /trunk/background_plane.cpp A /trunk/background_plane.h M /trunk/libdiffspot.cc M /trunk/libdiffspot.h Add background plane correction, used in all cases. In the future, possibly use the evaluate_plane() function to determine whether the correction is really necessary. The correction doubles the amount of time spent classifying pixels. ------------------------------------------------------------------------ r12 | sauter | 2006-02-14 11:42:35 -0800 (Tue, 14 Feb 2006) | 8 lines Changed paths: M /trunk/libdiffspot.cc Add sanity check to make sure that no more than 10% of pixels are masked out. The most straightforward way is to copy the data to a new container and use the nth_element algorithm. Unfortunately the necessity for copying the data makes this solution inefficient in terms of memory; and the process takes 0.25 seconds for an 18-megabyte image test case. However, this is the only way to insure that true background pixels are not masked out as underloads. ------------------------------------------------------------------------ r11 | sauter | 2005-12-20 10:47:13 -0800 (Tue, 20 Dec 2005) | 4 lines Changed paths: M /trunk/libdiffspot.cc M /trunk/libdiffspot.h Consolidate the functions search_border_overload and search_border_spot. However, this is a commit of work done six weeks ago and there was the complication of a parallel commit to the SSRL cvs tree. So the status of this code is not quite clear. ------------------------------------------------------------------------ r10 | sauter | 2005-11-03 15:40:56 -0800 (Thu, 03 Nov 2005) | 5 lines Changed paths: M /trunk/libdiffspot.cc Fix a bug that previously caused a segmentation fault whenever the wavelength was above 2.0 Angstroms. Also, the formulae for converting radius to resolution (and vice versa) do not appear to be correct. They may be useful approximations. Put in a comment pending further investigation. ------------------------------------------------------------------------ r9 | rwgk | 2005-07-08 16:53:40 -0700 (Fri, 08 Jul 2005) | 2 lines Changed paths: M /trunk/libdiffspot.cc unused variables removed (MIPSpro 7.3.1.3 diagnostics) ------------------------------------------------------------------------ r8 | sauter | 2004-11-22 10:33:55 -0800 (Mon, 22 Nov 2004) | 4 lines Changed paths: M /trunk/libdiffspot.cc As per comment in code, calculation of the deprecated "angular anomaly" gives a division-by-zero error if beam is off the detector. So take this code out. ------------------------------------------------------------------------ r7 | sauter | 2004-08-06 14:59:22 -0700 (Fri, 06 Aug 2004) | 4 lines Changed paths: M /trunk/libdiffspot.cc Change pixel search implementation so as to abolish excessive recursion, which caused stack overflows under Linux when stacksize was set to 8 Mb. New implementation uses std::stack. ------------------------------------------------------------------------ r6 | sauter | 2004-03-11 12:18:49 -0800 (Thu, 11 Mar 2004) | 2 lines Changed paths: M /trunk/libdiffspot.cc M /trunk/libdiffspot.h take away the cvadjpow and put in option for timing. ------------------------------------------------------------------------ r2 | ttleese | 2003-11-17 15:44:12 -0800 (Mon, 17 Nov 2003) | 2 lines Changed paths: A /trunk/libdiffspot.cc A /trunk/libdiffspot.h Initial revision ------------------------------------------------------------------------ r1 | (no author) | 2003-11-17 15:44:12 -0800 (Mon, 17 Nov 2003) | 1 line Changed paths: A /branches A /tags A /trunk New repository initialized by cvs2svn. ------------------------------------------------------------------------