Skip to content

mvtbtool: purpose and issues

Peter Corke edited this page Jan 1, 2025 · 1 revision

This script is placed in your path when you activate the Python environment. It provides a sandbox for working with the toolbox, everything is included

% mvtbtool
_  _ ____ ____ _  _ _ _  _ ____    _  _ _ ____ _ ____ _  _ 
|\/| |__| |    |__| | |\ | |___    |  | | [__  | |  | |\ | 
|  | |  | |___ |  | | | \| |___     \/  | ___] | |__| | \| 
                                                        
___ ____ ____ _    ___  ____ _  _                          
|  |  | |  | |    |__] |  |  \/                           
|  |__| |__| |___ |__] |__| _/\_  

for Python

You're running: MVTB==0.9.7, SMTB==1.1.13, NumPy==1.26.4, SciPy==1.14.1,
                OpenCV==4.10.0, Open3D==0.18.0

from machinevisiontoolbox import *
from spatialmath import *

matplotlib interactive mode on

func/object?       - show brief help
help(func/object)  - show detailed help
func/object??      - show source code

Python 3.10.16 (main, Dec 11 2024, 10:22:29) [Clang 14.0.6 ]
Type 'copyright', 'credits' or 'license' for more information
IPython 8.31.0 -- An enhanced Interactive Python. Type '?' for help.
Using matplotlib backend: MacOSX

>>> im = Image.Read("monalisa.png")

>>> im.disp()
Out[2]: <matplotlib.image.AxesImage at 0x16995bd90>

>>> 

Version issues

I've observed issues where figures don't appear when they should, basically it looks like plt.ion() hasn't been called, even though plt.isinteractive() is True and says it has. Essentially the matplotlib event loop is not properly connected into IPython. This seems to be highly dependent on the versions of Python, IPython and Matplotlib.

Combinations that I know work are:

Python IPython Matplotlib
3.9. 8.8. 3.6.2
3.10.16 8.31.0 3.10.0

Note that the recent versions of IPython require Python 3.10 or better.

Clone this wiki locally