|
Lynkeos
|
Classes | |
| class | LynkeosFourierBuffer |
| Class used to wrap the Fourier transform with FFTW library. More... | |
| protocol | <LynkeosImageBuffer> |
| Generic image management. More... | |
| protocol | <LynkeosProcessingParameter> |
| Processing parameter. More... | |
| protocol | <LynkeosAlignResult> |
| The alignment result for an image. More... | |
| class | LynkeosImageProcessingParameter |
| Processing parameter for image processing. More... | |
| protocol | <LynkeosProcessable> |
| This protocol is implemented by the classes which store and provide parameters. More... | |
| protocol | <LynkeosProcessableItem> |
| This protocol is implemented by the classes that can be the target of a processing. More... | |
| protocol | <LynkeosImageList> |
| Base protocol for an image list. More... | |
| protocol | <LynkeosDocument> |
| This protocol gathers the methods provided to the processing classes by the document. More... | |
| protocol | <LynkeosProcessing> |
| Common protocol for all processing classes. More... | |
| protocol | <LynkeosViewAlignResult> |
| Part of the alignment result needed for display. More... | |
| protocol | <LynkeosViewDocument> |
| Protocol implemented by the document for processing views. More... | |
| protocol | <LynkeosImageViewDelegate> |
| Delegate to the image view. More... | |
| protocol | <LynkeosImageView> |
| Protocol implemented by the window image view for processing views. More... | |
| protocol | <LynkeosWindowController> |
| This protocol is provided by the document window controller. More... | |
| protocol | <LynkeosProcessingView> |
| Protocol implemented by the "view" part of each processing. More... | |
| category | NSObject(LynkeosProcessingViewAdditions) |
| Informal protocol for validating the process view. More... | |
| union | ArithmeticOperand_t |
| Internal type used for arithmetic operators. More... | |
| class | LynkeosStandardImageBuffer |
| Class used for floating precision images. More... | |
| class | MyChromaticAlignParameter |
| Chromatic alignment offsets. More... | |
| class | MyChromaticAlignerView |
| View controlling the chromatic alignment. More... | |
| class | MyChromaticLevelsView |
| View and process for modifying an image levels and gamma. More... | |
| class | MyDeconvolutionParameters |
| Deconvolution processing parameters. More... | |
| class | MyDeconvolution |
| Deconvolution processing class. More... | |
| class | MyDeconvolutionView |
| View controller of the deconvolution processing. More... | |
| class | MyImageAlignerParameters |
| General entry parameters for alignment. More... | |
| class | MyImageAlignerListParameters |
| Alignment parameters saved at the document level. More... | |
| class | MyImageAligner |
| Image aligner class. More... | |
| class | MyImageAlignerView |
| Aligner view controller class. More... | |
| class | MyImageAlignerMonitor |
| Lightweight object for validating and redraw. More... | |
| class | MyImageAnalyzerParameters |
| General entry parameters for image quality analysis. More... | |
| class | MyImageAnalyzerResult |
| Result of the analysis process (entry data for further processing) More... | |
| class | MyAutoselectParams |
| Autoselect parameters. More... | |
| class | MyImageAnalyzer |
| Image analysis processing class. More... | |
| class | MyImageAnalyzerView |
| View controller of the wavelet processing. More... | |
| class | MyImageAnalyzerMonitor |
| Lightweight object for validating. More... | |
| class | MyImageStackerParameters |
| Stacking parameters. More... | |
| protocol | <MyImageStackerModeStrategy> |
| Strategy for the stacking mode. More... | |
| class | MyImageStackerList |
| Call param which indicates which list to process. More... | |
| class | MyImageStacker |
| Stacker class. More... | |
| class | MyImageStackerView |
| View controller of the image stacking. More... | |
| class | MyImageStackerMonitor |
| Lightweight object for validating. More... | |
| protocol | <MyLucyRichardsonDelegate> |
| This protocol is used to inform the view about the progress. More... | |
| class | MyLucyRichardsonParameters |
| Lucy Richardson deconvolution parameters. More... | |
| class | MyLucyRichardson |
| Lucy Richardson deconvolution class. More... | |
| class | MyLucyRichardsonViewParameters |
| Derived parameter type which stores also some view info. More... | |
| class | MyLucyRichardsonView |
| View controller for Lucy/Richardson deconvolution. More... | |
| class | MyLucyRichardsonMonitor |
| Lightweight object for monitoring image size change. More... | |
| class | MyUnsharpMaskParameters |
| Unsharp mask processing parameters. More... | |
| class | MyUnsharpMask |
| Unsharp mask processing. More... | |
| class | MyUnsharpMaskView |
| View controller of the deconvolution processing. More... | |
| struct | wavelet_t |
| One wavelet definition. More... | |
| class | MyWaveletParameters |
| Wavelet processing parameters. More... | |
| class | MyWavelet |
| Wavelet processing. More... | |
| class | MyWaveletView |
| View controller of the deconvolution processing. More... | |
| class | ProcessStackManager |
| This class ensures the processing of the whole stack. More... | |
| struct | CORRELATION_PEAK |
| Description of the peak in the correlation data. More... | |
Macros | |
| #define | GET_SAMPLE(s, p, x, y, w) |
| Convenience macro for accessing a sample plane with the required precision. More... | |
| #define | SET_SAMPLE(s, p, x, y, w, v) |
| Convenience macro for accessing a sample plane with the required precision. More... | |
Typedefs | |
| typedef REAL REALVECT | __attribute__ ((vector_size(16))) |
| Vector type. | |
Enumerations | |
| enum | floating_precision_t { SINGLE_PRECISION, DOUBLE_PRECISION } |
| Floating point precision of images. | |
| enum | ProcessingViewKind_t { ListManagementKind, ListProcessingKind, ImageProcessingKind, OtherProcessingKind } |
| Processing kind of the controller. More... | |
| enum | ListMode_t { DarkFrameMode = 1, FlatFieldMode = 2, ImageMode = 4 } |
| List working mode. More... | |
| enum | DataMode_t { ListData = 8, ResultData = 16 } |
| Which data is used. More... | |
| enum | LynkeosProcessingViewFrame_t { BottomTab = 1, BottomTab_NoList = 2, SeparateView = 4, SeparateView_NoList = 8 } |
| Prefered way of displaying the view. More... | |
| enum | ImageOperatorsStrategy_t { StandardStrategy, ParallelizedStrategy } |
| Strategy used for arithmetic operators. More... | |
| enum | Stack_Mode_t { Stacking_Standard, Stacking_Sigma_Reject, Stacking_Extremum } |
| Mode of stacking. | |
| enum | PostStack_t { NoPostStack, MeanStack, NormalizeStack } |
| Kind of postprocessing after stacking (for calibration frames) More... | |
| enum | PsfKind_t { GaussianPSF = 0, SelectionPSF, ImageFilePSF } |
| Kind of PSF. | |
| enum | wavelet_kind_t { FrequencySawtooth_Wavelet, ESO_Wavelet } |
| Kind of wavelet. | |
| enum | MyAnalysisMethod { EntropyAnalysis, SpectrumAnalysis } |
| Analysis method enumeration. | |
Functions | |
| void | correlate (LynkeosFourierBuffer *s1, LynkeosFourierBuffer *s2, LynkeosFourierBuffer *r) |
| Correlate two images. More... | |
| void | correlate_spectrums (LynkeosFourierBuffer *s1, LynkeosFourierBuffer *s2, LynkeosFourierBuffer *r) |
| Correlate two spectrums. More... | |
| void | corelation_peak (LynkeosFourierBuffer *result, CORRELATION_PEAK *peak) |
| Search the correlation peak in the correlation data. More... | |
| u_short | adjustFFTside (u_short n) |
| Adjust a value to the nearest power of 2, 3, 5, 7 for efficient FFT. More... | |
| void | adjustFFTrect (LynkeosIntegerRect *r) |
| Adjust a rectangle size for efficient FFT (keeping the same center) More... | |
| void | initializeProcessing (void) |
| Processing initialization. More... | |
| void | MakeGaussian (REAL *const *const planes, u_short width, u_short height, u_short nPlanes, u_short lineWidth, double radius) |
| Create a bidimensional gaussian curve. More... | |
Variables | |
| NSString *const | LynkeosAlignRef |
| Process string for the align result. | |
| NSString *const | LynkeosAlignResultRef |
| Reference for reading/setting the alignment result. | |
| NSString *const | myChromaticAlignerRef |
| Reference string for this process. | |
| NSString *const | myChromaticAlignerOffsetsRef |
| Reference for reading/setting the chromatic dispersion results. | |
| NSString *const | myImageAlignerRef |
| Reference string for this process. | |
| NSString *const | myImageAlignerParametersRef |
| Reference for reading/setting the alignment entry parameters. | |
| NSString *const | myImageAnalyzerRef |
| Reference string for this process. | |
| NSString *const | myImageAnalyzerParametersRef |
| Reference for reading/setting the analysis entry parameters. | |
| NSString *const | myImageAnalyzerResultRef |
| Reference for reading/setting the analysis result. | |
| NSString *const | myAutoselectParameterRef |
| Reference for reading/setting the autoselect parameter. | |
| NSString *const | myImageStackerRef |
| Reference string for this process. | |
| NSString *const | myImageStackerParametersRef |
| Reference for reading/setting the stacking parameters. | |
The processing classes provides image processing functions to the controler classes
| #define GET_SAMPLE | ( | s, | |
| p, | |||
| x, | |||
| y, | |||
| w | |||
| ) |
Convenience macro for accessing a sample plane with the required precision.
| s | Sample plane ("planes[color]" in saveXXX context) |
| p | precision ("precision" in saveXXX context) |
| x | X coordinate of pixel |
| y | Y coordinate of pixel |
| w | The pixels line width of the samples buffer ("lineW" in saveXXX context) |
| #define SET_SAMPLE | ( | s, | |
| p, | |||
| x, | |||
| y, | |||
| w, | |||
| v | |||
| ) |
Convenience macro for accessing a sample plane with the required precision.
| s | Sample plane ("planes[color]" in convertToPlanar context) |
| p | precision ("precision" in convertToPlanar context) |
| x | X coordinate of pixel |
| y | Y coordinate of pixel |
| w | The pixels line width of the samples buffer ("lineW" in convertToPlanar context) |
| v | The value to store in the output buffer |
Referenced by LynkeosStandardImageBuffer::extractSample:atX:Y:withWidth:height:withPlanes:lineWidth:.
| enum DataMode_t |
| enum ListMode_t |
Prefered way of displaying the view.
| enum PostStack_t |
| enum ProcessingViewKind_t |
Processing kind of the controller.
This is used for GUI organization
| void adjustFFTrect | ( | LynkeosIntegerRect * | r) |
Adjust a rectangle size for efficient FFT (keeping the same center)
| r | the rectangle to adjust |
References adjustFFTside(), LynkeosIntegerSize::height, LynkeosIntegerRect::origin, LynkeosIntegerRect::size, LynkeosIntegerSize::width, LynkeosIntegerPoint::x, and LynkeosIntegerPoint::y.
Referenced by MyImageStackerView::cropRectangleChange:.
| u_short adjustFFTside | ( | u_short | n) |
Adjust a value to the nearest power of 2, 3, 5, 7 for efficient FFT.
| n | the value to adjust |
Referenced by adjustFFTrect().
| void corelation_peak | ( | LynkeosFourierBuffer * | result, |
| CORRELATION_PEAK * | peak | ||
| ) |
Search the correlation peak in the correlation data.
| result | Correlation data (result from one correlate call) |
| peak | Array of CORRELATION_PEAK (one entry per plane in result) |
References LynkeosStandardImageBuffer::_h, LynkeosStandardImageBuffer::_nPlanes, LynkeosStandardImageBuffer::_w, colorValue, CORRELATION_PEAK::sigma_x, CORRELATION_PEAK::sigma_y, CORRELATION_PEAK::val, CORRELATION_PEAK::x, and CORRELATION_PEAK::y.
| void correlate | ( | LynkeosFourierBuffer * | s1, |
| LynkeosFourierBuffer * | s2, | ||
| LynkeosFourierBuffer * | r | ||
| ) |
Correlate two images.
| s1 | First image |
| s2 | Second image |
| r | Image of the correlation data |
References correlate_spectrums(), and LynkeosFourierBuffer::directTransform.
| void correlate_spectrums | ( | LynkeosFourierBuffer * | s1, |
| LynkeosFourierBuffer * | s2, | ||
| LynkeosFourierBuffer * | r | ||
| ) |
Correlate two spectrums.
| s1 | First spectrum |
| s2 | Second spectrum |
| r | Image of the correlation data |
References LynkeosFourierBuffer::inverseTransform, and LynkeosFourierBuffer::multiplyWithConjugateOf:result:.
Referenced by correlate().
| void initializeProcessing | ( | void | ) |
Processing initialization.
To initialize the processing, we need to check if the processor support Altivec instructions and configure FFTW3 calls accordingly ; and then to retrieve the number of processors.
| void MakeGaussian | ( | REAL *const *const | planes, |
| u_short | width, | ||
| u_short | height, | ||
| u_short | nPlanes, | ||
| u_short | lineWidth, | ||
| double | radius | ||
| ) |
Create a bidimensional gaussian curve.
| [out] | planes | The planes to fill with the gaussian |
| width | The image width | |
| height | The image height | |
| nPlanes | The number of planes to fill | |
| lineWidth | The number of "REAL" in a line | |
| radius | The gaussian radius |
1.8.4