ImportError: cannot import name 'position_jacobian' from 'omni.isaac.lula'

How can I run the API in omni.isaac.lula?
Traceback (most recent call last):
File “/home/wsj/.local/share/ov/pkg/retarget/main.py”, line 115, in
main(dexycb_dir=“/home/wsj/.local/share/ov/pkg/retarget/dexycb_datasets/datasets”,
File “/home/wsj/.local/share/ov/pkg/retarget/main.py”, line 105, in main
qpos = retargeting.retarget(ref_value)
File “/home/wsj/.local/share/ov/pkg/retarget/retarget/retarget_optimizer.py”, line 222, in retarget
qpos = self.optimizer.retarget(
File “/home/wsj/.local/share/ov/pkg/retarget/retarget/retarget_optimizer.py”, line 175, in retarget
return self.optimize(objective_fn, last_qpos)
File “/home/wsj/.local/share/ov/pkg/retarget/retarget/retarget_optimizer.py”, line 80, in optimize
qpos = self.opt.optimize(last_qpos)
File “/home/wsj/anaconda3/envs/isaac-sim/lib/python3.10/site-packages/nlopt/nlopt.py”, line 335, in optimize
return _nlopt.opt_optimize(self, *args)
File “/home/wsj/.local/share/ov/pkg/retarget/retarget/retarget_optimizer.py”, line 135, in objective
from omni.isaac.lula import position_jacobian
ImportError: cannot import name ‘position_jacobian’ from ‘omni.isaac.lula’ (/home/wsj/.local/share/ov/pkg/isaac_sim-2023.1.0/exts/omni.isaac.lula/omni/isaac/lula/init.py)

Can you give me some solution?

It looks like you’re mixing packages from omniverse and an anaconda environment. I’m not sure that can be expected to work, in general.

Could you provide a little more detail on how you’re running your script? Are you using python.sh?

Yes. I’m mixing packages from omniverse and an conda environment. I ran the script on the terminal. I need to activate the Conda environment first and run “source isaac_sim-2023.1.0/setup_conda_env.sh”. Finally, I run “python retarget/main.py”. As shown in the image:

Just, I am unable to debug using VSCODE. What should I do to enable debug?

One more question, I imported the shadow hand into Isaac Sim. As is well known, the shadow hand has 24 joints. Given the position of the joint, how do I calculate the Jacobian matrix for a specific body? I use the API “articulation_view.get_jacobians” to get the jacobians. And The shape of returned result is (33,6,30). ‘33’ is the number of bodies in the shadow hand I imported. ‘6’ represent degrees of freedom. 30=24+6?

Hi @1878720579 - You can use this document to find more information about VS Code: 3.3. Debugging With Visual Studio Code — Omniverse IsaacSim latest documentation

You can find more info about articulation_view.get_jacobians in this core API page: Core [omni.isaac.core] — isaac_sim 2023.1.1-rc.7 documentation