EricGuo5513 / HumanML3D

HumanML3D: A large and diverse 3d human motion-language dataset.
MIT License
768 stars 76 forks source link

When I run animation.ipynb, it report error #84

Open jin-qq opened 1 year ago

jin-qq commented 1 year ago

When I run animation.ipynb

    data = np.load(pjoin(src_dir, npy_file))
    save_path = pjoin(tgt_ani_dir, npy_file[:-3] + 'mp4')
    if os.path.exists(save_path):
        continue    plot_3d_motion(save_path, kinematic_chain, data, title="None", fps=20, radius=4)

it report the error


AttributeError                            Traceback (most recent call last)
/tmp/ipykernel_813/1233317043.py in <module>
      5         continue
      6 #   You may set the title on your own.
----> 7     plot_3d_motion(save_path, kinematic_chain, data, title="None", fps=20, radius=4)

/tmp/ipykernel_813/1547562698.py in plot_3d_motion(save_path, kinematic_tree, joints, title, figsize, fps, radius)
     87     ani = FuncAnimation(fig, update, frames=frame_number, interval=1000/fps, repeat=False)
     88 
---> 89     ani.save(save_path, fps=fps)
     90     plt.close()

~/miniconda3/lib/python3.8/site-packages/matplotlib/animation.py in save(self, filename, writer, fps, dpi, codec, bitrate, extra_args, metadata, extra_anim, savefig_kwargs, progress_callback)
   1076                                _is_saving=True, manager=None):
   1077             for anim in all_anim:
-> 1078                 anim._init_draw()  # Clear the initial frame
   1079             frame_number = 0
   1080             # TODO: Currently only FuncAnimation has a save_count

~/miniconda3/lib/python3.8/site-packages/matplotlib/animation.py in _init_draw(self)
   1696                 )
   1697                 return
-> 1698             self._draw_frame(frame_data)
   1699         else:
   1700             self._drawn_artists = self._init_func()

~/miniconda3/lib/python3.8/site-packages/matplotlib/animation.py in _draw_frame(self, framedata)
   1718         # Call the func with framedata and args. If blitting is desired,
   1719         # func needs to return a sequence of any artists that were modified.
-> 1720         self._drawn_artists = self._func(framedata, *self._args)
   1721 
   1722         if self._blit:

/tmp/ipykernel_813/1547562698.py in update(index)
     57     def update(index):
     58         #         print(index)
---> 59         ax.lines = []
     60         ax.collections = []
     61         ax.view_init(elev=120, azim=-90)

AttributeError: can't set attribute```
EricGuo5513 commented 1 year ago

You may have different matplotlib version

On Mon, Aug 28, 2023 at 8:59 AM elba @.***> wrote:

When I run animation.ipynb `for npy_file in tqdm(npy_files): data = np.load(pjoin(src_dir, npy_file)) save_path = pjoin(tgt_ani_dir, npy_file[:-3] + 'mp4') if os.path.exists(save_path): continue You may set the title on your own.

plot_3d_motion(save_path, kinematic_chain, data, title="None", fps=20, radius=4)`

it report the error ` 0%| | 0/29228 [00:00<?, ?it/s]/tmp/ipykernel_813/1547562698.py:38: MatplotlibDeprecationWarning: Axes3D(fig) adding itself to the figure is deprecated since 3.4. Pass the keyword argument auto_add_to_figure=False and use fig.add_axes(ax) to suppress this warning. The default value of auto_add_to_figure will change to False in mpl3.5 and True values will no longer work in 3.6. This is consistent with other Axes classes. ax = p3.Axes3D(fig) /tmp/ipykernel_813/1547562698.py:19: MatplotlibDeprecationWarning: The 'b' parameter of grid() has been renamed 'visible' since Matplotlib 3.5; support for the old name will be dropped two minor releases later. ax.grid(b=False) 0%| | 0/29228 [00:00<?, ?it/s]

AttributeError Traceback (most recent call last) /tmp/ipykernel_813/1233317043.py in 5 continue 6 # You may set the title on your own. ----> 7 plot_3d_motion(save_path, kinematic_chain, data, title="None", fps=20, radius=4)

/tmp/ipykernel_813/1547562698.py in plot_3d_motion(save_path, kinematic_tree, joints, title, figsize, fps, radius) 87 ani = FuncAnimation(fig, update, frames=frame_number, interval=1000/fps, repeat=False) 88 ---> 89 ani.save(save_path, fps=fps) 90 plt.close()

~/miniconda3/lib/python3.8/site-packages/matplotlib/animation.py in save(self, filename, writer, fps, dpi, codec, bitrate, extra_args, metadata, extra_anim, savefig_kwargs, progress_callback) 1076 _is_saving=True, manager=None): 1077 for anim in all_anim: -> 1078 anim._init_draw() # Clear the initial frame 1079 frame_number = 0 1080 # TODO: Currently only FuncAnimation has a save_count

~/miniconda3/lib/python3.8/site-packages/matplotlib/animation.py in _init_draw(self) 1696 ) 1697 return -> 1698 self._draw_frame(frame_data) 1699 else: 1700 self._drawn_artists = self._init_func()

~/miniconda3/lib/python3.8/site-packages/matplotlib/animation.py in _draw_frame(self, framedata) 1718 # Call the func with framedata and args. If blitting is desired, 1719 # func needs to return a sequence of any artists that were modified. -> 1720 self._drawn_artists = self._func(framedata, *self._args) 1721 1722 if self._blit:

/tmp/ipykernel_813/1547562698.py in update(index) 57 def update(index): 58 # print(index) ---> 59 ax.lines = [] 60 ax.collections = [] 61 ax.view_init(elev=120, azim=-90)

AttributeError: can't set attribute `

— Reply to this email directly, view it on GitHub https://github.com/EricGuo5513/HumanML3D/issues/84, or unsubscribe https://github.com/notifications/unsubscribe-auth/AKRYNB5SH7B7UWVMVASPVYTXXSW5PANCNFSM6AAAAAA4BRUMII . You are receiving this because you are subscribed to this thread.Message ID: @.***>

jin-qq commented 1 year ago

You may have different matplotlib version On Mon, Aug 28, 2023 at 8:59 AM elba @.> wrote: When I run animation.ipynb for npy_file in tqdm(npy_files): data = np.load(pjoin(src_dir, npy_file)) save_path = pjoin(tgt_ani_dir, npy_file[:-3] + 'mp4') if os.path.exists(save_path): continue You may set the title on your own. plot_3d_motion(save_path, kinematic_chain, data, title="None", fps=20, radius=4) it report the error ` 0%| | 0/29228 [00:00<?, ?it/s]/tmp/ipykernel_813/1547562698.py:38: MatplotlibDeprecationWarning: Axes3D(fig) adding itself to the figure is deprecated since 3.4. Pass the keyword argument auto_add_to_figure=False and use fig.add_axes(ax) to suppress this warning. The default value of auto_add_to_figure will change to False in mpl3.5 and True values will no longer work in 3.6. This is consistent with other Axes classes. ax = p3.Axes3D(fig) /tmp/ipykernel_813/1547562698.py:19: MatplotlibDeprecationWarning: The 'b' parameter of grid() has been renamed 'visible' since Matplotlib 3.5; support for the old name will be dropped two minor releases later. ax.grid(b=False) 0%| | 0/29228 [00:00<?, ?it/s] AttributeError Traceback (most recent call last) /tmp/ipykernel_813/1233317043.py in 5 continue 6 # You may set the title on your own. ----> 7 plot_3d_motion(save_path, kinematic_chain, data, title="None", fps=20, radius=4) /tmp/ipykernel_813/1547562698.py in plot_3d_motion(save_path, kinematic_tree, joints, title, figsize, fps, radius) 87 ani = FuncAnimation(fig, update, frames=frame_number, interval=1000/fps, repeat=False) 88 ---> 89 ani.save(save_path, fps=fps) 90 plt.close() ~/miniconda3/lib/python3.8/site-packages/matplotlib/animation.py in save(self, filename, writer, fps, dpi, codec, bitrate, extra_args, metadata, extra_anim, savefig_kwargs, progress_callback) 1076 _is_saving=True, manager=None): 1077 for anim in all_anim: -> 1078 anim._init_draw() # Clear the initial frame 1079 frame_number = 0 1080 # TODO: Currently only FuncAnimation has a save_count ~/miniconda3/lib/python3.8/site-packages/matplotlib/animation.py in _init_draw(self) 1696 ) 1697 return -> 1698 self._draw_frame(frame_data) 1699 else: 1700 self._drawn_artists = self._init_func() ~/miniconda3/lib/python3.8/site-packages/matplotlib/animation.py in _draw_frame(self, framedata) 1718 # Call the func with framedata and args. If blitting is desired, 1719 # func needs to return a sequence of any artists that were modified. -> 1720 self._drawn_artists = self._func(framedata, self._args) 1721 1722 if self._blit: /tmp/ipykernel_813/1547562698.py in update(index) 57 def update(index): 58 # print(index) ---> 59 ax.lines = [] 60 ax.collections = [] 61 ax.view_init(elev=120, azim=-90) AttributeError: can't set attribute ` — Reply to this email directly, view it on GitHub <#84>, or unsubscribe https://github.com/notifications/unsubscribe-auth/AKRYNB5SH7B7UWVMVASPVYTXXSW5PANCNFSM6AAAAAA4BRUMII . You are receiving this because you are subscribed to this thread.Message ID: **@.***>

Thanks, I change version and it works

GuangtaoLyu commented 6 months ago

You may have different matplotlib version On Mon, Aug 28, 2023 at 8:59 AM elba @._*> wrote: When I run animation.ipynb for npy_file in tqdm(npy_files): data = np.load(pjoin(src_dir, npy_file)) save_path = pjoin(tgt_ani_dir, npy_file[:-3] + 'mp4') if os.path.exists(save_path): continue You may set the title on your own. plot_3d_motion(save_path, kinematic_chain, data, title="None", fps=20, radius=4) it report the error `0%| | 0/29228 [00:00<?, ?it/s]/tmp/ipykernel_813/1547562698.py:38: MatplotlibDeprecationWarning: Axes3D(fig) adding itself to the figure is deprecated since 3.4. Pass the keyword argument auto_add_to_figure=False and use fig.add_axes(ax) to suppress this warning. The default value of auto_add_to_figure will change to False in mpl3.5 and True values will no longer work in 3.6. This is consistent with other Axes classes. ax = p3.Axes3D(fig) /tmp/ipykernel_813/1547562698.py:19: MatplotlibDeprecationWarning: The 'b' parameter of grid() has been renamed 'visible' since Matplotlib 3.5; support for the old name will be dropped two minor releases later. ax.grid(b=False) 0%| | 0/29228 [00:00<?, ?it/s] AttributeError Traceback (most recent call last) /tmp/ipykernel_813/1233317043.py in 5 continue 6 # You may set the title on your own. ----> 7 plot_3d_motion(save_path, kinematic_chain, data, title="None", fps=20, radius=4) /tmp/ipykernel_813/1547562698.py in plot_3d_motion(save_path, kinematic_tree, joints, title, figsize, fps, radius) 87 ani = FuncAnimation(fig, update, frames=frame_number, interval=1000/fps, repeat=False) 88 ---> 89 ani.save(save_path, fps=fps) 90 plt.close() ~/miniconda3/lib/python3.8/site-packages/matplotlib/animation.py in save(self, filename, writer, fps, dpi, codec, bitrate, extra_args, metadata, extra_anim, savefig_kwargs, progress_callback) 1076 _is_saving=True, manager=None): 1077 for anim in all_anim: -> 1078 anim._init_draw() # Clear the initial frame 1079 frame_number = 0 1080 # TODO: Currently only FuncAnimation has a save_count ~/miniconda3/lib/python3.8/site-packages/matplotlib/animation.py in _init_draw(self) 1696 ) 1697 return -> 1698 self._draw_frame(frame_data) 1699 else: 1700 self._drawn_artists = self._init_func() ~/miniconda3/lib/python3.8/site-packages/matplotlib/animation.py in _draw_frame(self, framedata) 1718 # Call the func with framedata and args. If blitting is desired, 1719 # func needs to return a sequence of any artists that were modified. -> 1720 self._drawn_artists = self._func(framedata, self._args) 1721 1722 if self._blit: /tmp/ipykernel_813/1547562698.py in update(index) 57 def update(index): 58 # print(index) ---> 59 ax.lines = [] 60 ax.collections = [] 61 ax.viewinit(elev=120, azim=-90) AttributeError: can't set attribute` — Reply to this email directly, view it on GitHub <#84>, or unsubscribe https://github.com/notifications/unsubscribe-auth/AKRYNB5SH7B7UWVMVASPVYTXXSW5PANCNFSM6AAAAAA4BRUMII . You are receiving this because you are subscribed to this thread.Message ID: @.**>

Thanks, I change version and it works

which version did you use? i change the matplotlib to 3.3.4. the error still exits.