예제 #1
0
    def view_expert_ensemble_widget(self, figure_size=(7, 7)):
        r"""
        Visualizes the ensemble of experts of the CLM object using an
        interactive widget.

        Parameters
        ----------
        figure_size : (`int`, `int`), optional
            The size of the plotted figures.

        Raises
        ------
        ValueError
            Only convolution-based expert ensembles can be visualized.
        """
        if not isinstance(self.expert_ensembles[0],
                          ConvolutionBasedExpertEnsemble):
            raise ValueError('Only convolution-based expert ensembles can be '
                             'visualized.')
        try:
            from menpowidgets import visualize_expert_ensemble
            centers = [sp.model.mean() for sp in self.shape_models]
            visualize_expert_ensemble(self.expert_ensembles,
                                      centers,
                                      figure_size=figure_size)
        except:
            from menpo.visualize.base import MenpowidgetsMissingError
            raise MenpowidgetsMissingError()
예제 #2
0
파일: base.py 프로젝트: eosulliv/menpo
    def view_widget(self):
        r"""
        Visualize this lazy collection of items using menpowidgets.

        The type of the first item will be used to determine an appropriate
        visualization for the list of items.

        Returns
        -------
        widget
            The appropriate menpowidget to view these items


        Raises
        ------
        MenpowidgetsMissingError
            If menpowidgets is not installed
        ValueError
            If menpowidgets cannot locate an appropriate items-visualization
            for the type of items in this :map:`LazyList`
        """
        try:
            from menpowidgets import view_widget
        except ImportError as e:
            from menpo.visualize.base import MenpowidgetsMissingError

            raise MenpowidgetsMissingError(e)
        else:
            return view_widget(self)
예제 #3
0
    def view_widget(self,
                    browser_style='buttons',
                    figure_size=(10, 8),
                    style='coloured'):
        r"""
        Visualization of the TriMesh using an interactive widget.

        Parameters
        ----------
        browser_style : {``'buttons'``, ``'slider'``}, optional
            It defines whether the selector of the objects will have the form of
            plus/minus buttons or a slider.
        figure_size : (`int`, `int`) `tuple`, optional
            The initial size of the rendered figure.
        style : {``'coloured'``, ``'minimal'``}, optional
            If ``'coloured'``, then the style of the widget will be coloured. If
            ``minimal``, then the style is simple using black and white colours.
        """
        try:
            from menpowidgets import visualize_pointclouds
            visualize_pointclouds(self,
                                  figure_size=figure_size,
                                  style=style,
                                  browser_style=browser_style)
        except ImportError:
            from menpo.visualize.base import MenpowidgetsMissingError
            raise MenpowidgetsMissingError()
예제 #4
0
    def view_appearance_models_widget(self, n_parameters=5,
                                      parameters_bounds=(-3.0, 3.0),
                                      mode='multiple', figure_size=(10, 8)):
        r"""
        Visualizes the appearance models of the AAM object using an
        interactive widget.

        Parameters
        -----------
        n_parameters : `int` or `list` of `int` or ``None``, optional
            The number of appearance principal components to be used for the
            parameters sliders.
            If `int`, then the number of sliders per scale is the minimum
            between `n_parameters` and the number of active components per
            scale.
            If `list` of `int`, then a number of sliders is defined per scale.
            If ``None``, all the active components per scale will have a slider.
        parameters_bounds : (`float`, `float`), optional
            The minimum and maximum bounds, in std units, for the sliders.
        mode : {``single``, ``multiple``}, optional
            If ``'single'``, only a single slider is constructed along with a
            drop down menu.
            If ``'multiple'``, a slider is constructed for each parameter.
        figure_size : (`int`, `int`), optional
            The size of the plotted figures.
        """
        try:
            from menpowidgets import visualize_appearance_model
            visualize_appearance_model(self.appearance_models,
                                       n_parameters=n_parameters,
                                       parameters_bounds=parameters_bounds,
                                       figure_size=figure_size, mode=mode)
        except ImportError:
            from menpo.visualize.base import MenpowidgetsMissingError
            raise MenpowidgetsMissingError()
예제 #5
0
    def view_frequency_filter_images_widget(self,
                                            figure_size=(7, 7),
                                            style='coloured',
                                            browser_style='buttons'):
        r"""
        Visualizes the filters on the frequency domain using an interactive
        widget.

        Parameters
        ----------
        figure_size : (`int`, `int`), optional
            The initial size of the rendered figure.
        style : {``'coloured'``, ``'minimal'``}, optional
            If ``'coloured'``, then the style of the widget will be coloured. If
            ``minimal``, then the style is simple using black and white colours.
        browser_style : {``'buttons'``, ``'slider'``}, optional
            It defines whether the selector of the objects will have the form of
            plus/minus buttons or a slider.
        """
        try:
            from menpowidgets import visualize_images
            visualize_images(self.frequency_filter_images,
                             figure_size=figure_size,
                             style=style,
                             browser_style=browser_style)
        except ImportError:
            from menpo.visualize.base import MenpowidgetsMissingError
            raise MenpowidgetsMissingError()
    def view_shape_model_widget(self,
                                n_parameters=5,
                                parameters_bounds=(-3.0, 3.0),
                                mode='multiple'):
        r"""
        Visualizes the shape model of the Morphable Model using an interactive
        widget.

        Parameters
        ----------
        n_parameters : `int` or `list` of `int` or ``None``, optional
            The number of shape principal components to be used for the
            parameters sliders. If `int`, then the number of sliders per
            scale is the minimum between `n_parameters` and the number of
            active components per scale. If `list` of `int`, then a number of
            sliders is defined per scale. If ``None``, all the active
            components per scale will have a slider.
        parameters_bounds : ``(float, float)``, optional
            The minimum and maximum bounds, in std units, for the sliders.
        mode : {``single``, ``multiple``}, optional
            If ``'single'``, only a single slider is constructed along with a
            drop down menu. If ``'multiple'``, a slider is constructed for
            each parameter.
        """
        try:
            from menpowidgets import visualize_shape_model_3d
            visualize_shape_model_3d(self.shape_model,
                                     n_parameters=n_parameters,
                                     parameters_bounds=parameters_bounds,
                                     mode=mode)
        except ImportError:
            from menpo.visualize.base import MenpowidgetsMissingError
            raise MenpowidgetsMissingError()
예제 #7
0
 def _view_widget_3d(self):
     r"""
     Visualization of the landmark manager using an interactive widget.
     """
     try:
         from menpowidgets import view_widget
         view_widget(self)
     except ImportError as e:
         from menpo.visualize.base import MenpowidgetsMissingError
         raise MenpowidgetsMissingError(e)
예제 #8
0
파일: labelled.py 프로젝트: zhixinshu/menpo
 def _view_widget_3d(self):
     r"""
     Visualization of the LabelledPointUndirectedGraph using an interactive 
     widget.
     """
     try:
         from menpowidgets import view_widget
         view_widget(self)
     except ImportError:
         from menpo.visualize.base import MenpowidgetsMissingError
         raise MenpowidgetsMissingError()
예제 #9
0
 def view_aam_widget(self, n_shape_parameters=5, n_appearance_parameters=5,
                     parameters_bounds=(-3.0, 3.0), mode='multiple',
                     figure_size=(10, 8)):
     try:
         from menpowidgets import visualize_patch_aam
         visualize_patch_aam(self, n_shape_parameters=n_shape_parameters,
                             n_appearance_parameters=n_appearance_parameters,
                             parameters_bounds=parameters_bounds,
                             figure_size=figure_size, mode=mode)
     except ImportError:
         from menpo.visualize.base import MenpowidgetsMissingError
         raise MenpowidgetsMissingError()
예제 #10
0
 def view_appearance_models_widget(self, n_parameters=5,
                                   parameters_bounds=(-3.0, 3.0),
                                   mode='multiple', figure_size=(10, 8)):
     try:
         from menpowidgets import visualize_patch_appearance_model
         centers = [sp.model.mean() for sp in self.shape_models]
         visualize_patch_appearance_model(self.appearance_models, centers,
                                          n_parameters=n_parameters,
                                          parameters_bounds=parameters_bounds,
                                          figure_size=figure_size, mode=mode)
     except ImportError:
         from menpo.visualize.base import MenpowidgetsMissingError
         raise MenpowidgetsMissingError()
예제 #11
0
    def _view_widget_2d(self, figure_size=(7, 7)):
        r"""
        Visualization of the landmark manager using an interactive widget.

        Parameters
        ----------
        figure_size : (`int`, `int`), optional
            The initial size of the rendered figure.
        """
        try:
            from menpowidgets import view_widget
            view_widget(self, figure_size=figure_size)
        except ImportError as e:
            from menpo.visualize.base import MenpowidgetsMissingError
            raise MenpowidgetsMissingError(e)
예제 #12
0
파일: labelled.py 프로젝트: zhixinshu/menpo
    def _view_widget_2d(self, figure_size=(7, 7)):
        r"""
        Visualization of the LabelledPointUndirectedGraph using an interactive 
        widget.

        Parameters
        ----------
        figure_size : (`int`, `int`), optional
            The initial size of the rendered figure.
        """
        try:
            from menpowidgets import view_widget
            view_widget(self, figure_size=figure_size)
        except ImportError:
            from menpo.visualize.base import MenpowidgetsMissingError
            raise MenpowidgetsMissingError()
예제 #13
0
    def view_clm_widget(self,
                        n_shape_parameters=5,
                        parameters_bounds=(-3.0, 3.0),
                        mode='multiple',
                        figure_size=(7, 7)):
        r"""
        Visualizes the CLM object using an interactive widget.

        Parameters
        ----------
        n_shape_parameters : `int` or `list` of `int` or ``None``, optional
            The number of shape principal components to be used for the
            parameters sliders. If `int`, then the number of sliders per
            scale is the minimum between `n_parameters` and the number of
            active components per scale. If `list` of `int`, then a number of
            sliders is defined per scale. If ``None``, all the active
            components per scale will have a slider.
        parameters_bounds : ``(float, float)``, optional
            The minimum and maximum bounds, in std units, for the sliders.
        mode : {``single``, ``multiple``}, optional
            If ``'single'``, only a single slider is constructed along with a
            drop down menu. If ``'multiple'``, a slider is constructed for
            each parameter.
        figure_size : (`int`, `int`), optional
            The size of the rendered figure.

        Raises
        ------
        ValueError
            Only convolution-based expert ensembles can be visualized.
        """
        if not isinstance(self.expert_ensembles[0],
                          ConvolutionBasedExpertEnsemble):
            raise ValueError('Only convolution-based expert ensembles can be '
                             'visualized.')
        try:
            from menpowidgets import visualize_clm
            visualize_clm(self,
                          n_shape_parameters=n_shape_parameters,
                          parameters_bounds=parameters_bounds,
                          figure_size=figure_size,
                          mode=mode)
        except:
            from menpo.visualize.base import MenpowidgetsMissingError
            raise MenpowidgetsMissingError()