You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
I get an error message not informative in the Python API (see bellow).
The scaled wholebody_AOT_01.osim model file was created, but I still get an error message and the model was not scaled (it is a copy of the orginal .osim file).
Could someone help me understand?
[info] Processing subject AOT_scaled...
[info] Step 1: Loading generic model
[info] Updating Model file from 40500 to latest format...
[info] Loaded model Whole-body from file /home/charbie/Documents/Programmation/GaitAnalyzer/models/OpenSim_models/wholebody.osim
[info] Step 2: Scaling generic model
[info] Loaded marker file ../models/OpenSim_models/../../data/AOT_01/AOT_01_ManipStim_static.trc (49 markers, 531 frames)
[info] Measurement 'pelvis'
[info] pair 0 (RASIS, LASIS): model = 0.256, experimental = 0.255993
[info] pair 1 (LPSIS, RPSIS): model = 0.08, experimental = 0.0613892
[info] overall scale factor = 0.883668
[info] Measurement 'femur_r'
[info] pair 0 (RGT, RLFE): model = 0.395429, experimental = 0.431454
[info] pair 1 (RMFE, RLFE): model = 0.105000, experimental = 0.116833
[info] pair 2 (RMFE, RGT): model = 0.421769, experimental = 0.471831
[info] overall scale factor = 1.10750
[info] Measurement 'tibia_r'
[info] pair 0 (RLM, RATT): model = 0.359123, experimental = 0.385987
[info] pair 1 (RSPH, RATT): model = 0.33291, experimental = 0.375302
[info] pair 2 (RSPH, RLM): model = 0.103663, experimental = 0.0838040
[info] overall scale factor = 1.00352
[info] Measurement 'calcn_r'
[info] pair 0 (RCAL, RMFH1): model = 0.209521, experimental = 0.204883
[info] pair 1 (RMFH5, RCAL): model = 0.168846, experimental = 0.192522
[info] overall scale factor = 1.05904
[info] Measurement 'talus_r'
[info] pair 0 (RCAL, RSPH): model = 0.104459, experimental = 0.0927381
[info] pair 1 (RCAL, RLM): model = 0.0818, experimental = 0.0847098
[info] overall scale factor = 0.961683
[info] Measurement 'toes_r'
[info] pair 0 (RMFH1, RTT2): model = 0.0745078, experimental = 0.0779936
[info] pair 1 (RMFH5, RTT2): model = 0.101941, experimental = 0.0970183
[info] overall scale factor = 0.999246
[info] Measurement 'torso'
[info] pair 0 (STR, SUP): model = 0.170532, experimental = 0.170508
[info] pair 1 (C7, T10): model = 0.222612, experimental = 0.213531
[info] pair 2 (T10, STR): model = 0.210238, experimental = 0.222808
[info] pair 3 (SUP, C7): model = 0.127236, experimental = 0.145673
[info] overall scale factor = 1.04094
[info] Measurement 'head_and_neck'
[info] pair 0 (HV, C7): model = 0.253734, experimental = 0.281397
[info] pair 1 (LTEMP, RTEMP): model = 0.2, experimental = 0.181464
[info] pair 2 (OCC, SEL): model = 0.222072, experimental = 0.235356
[info] overall scale factor = 1.02539
[info] Measurement 'humerus_r'
[info] pair 0 (RA, RLHE): model = 0.32892, experimental = 0.319013
[info] pair 1 (RA, RMHE): model = 0.331216, experimental = 0.34462
[info] overall scale factor = 1.00517
[info] Measurement 'ulna_r'
[info] pair 0 (RMHE, RUS): model = 0.253226, experimental = 0.285188
[info] overall scale factor = 1.12622
[info] Measurement 'radius_r'
[info] pair 0 (RLHE, RRS): model = 0.261732, experimental = 0.274362
[info] overall scale factor = 1.04826
[info] Measurement 'lunate_r'
[info] pair 0 (RUS, RRS): model = 0.0690507, experimental = 0.0779091
[info] overall scale factor = 1.12829
[info] Measurement 'hand_r'
[info] pair 0 (RRS, RUS): model = 0.0690507, experimental = 0.0779091
[info] pair 1 (RHMH5, RHMH2): model = 0.0833136, experimental = 0.0966010
[info] pair 2 (RUS, RHMH5): model = 0.0725534, experimental = 0.0934954
[info] pair 3 (RRS, RHMH2): model = 0.0915186, experimental = 0.108150
[info] overall scale factor = 1.18954
[info] Measurement 'femur_l'
[info] pair 0 (LGT, LLFE): model = 0.395429, experimental = 0.393603
[info] pair 1 (LLFE, LMFE): model = 0.105000, experimental = 0.120284
[info] pair 2 (LMFE, LGT): model = 0.421769, experimental = 0.45211
[info] overall scale factor = 1.07096
[info] Measurement 'tibia_l'
[info] pair 0 (LLM, LATT): model = 0.360651, experimental = 0.390256
[info] pair 1 (LSPH, LATT): model = 0.331555, experimental = 0.365895
[info] pair 2 (LSPH, LLM): model = 0.103663, experimental = 0.0870216
[info] overall scale factor = 1.00838
[info] Measurement 'talus_l'
[info] pair 0 (LCAL, LLM): model = 0.0818, experimental = 0.0818030
[info] pair 1 (LCAL, LSPH): model = 0.104459, experimental = 0.101084
[info] overall scale factor = 0.983863
[info] Measurement 'calcn_l'
[info] pair 0 (LCAL, LMFH1): model = 0.209521, experimental = 0.211055
[info] pair 1 (LCAL, LMFH5): model = 0.168846, experimental = 0.184616
[info] overall scale factor = 1.05036
[info] Measurement 'toes_l'
[info] pair 0 (LMFH1, LTT2): model = 0.0745078, experimental = 0.0826411
[info] pair 1 (LMFH5, LTT2): model = 0.101941, experimental = 0.0958655
[info] overall scale factor = 1.02478
[info] Measurement 'humerus_l'
[info] pair 0 (LA, LLHE): model = 0.32892, experimental = 0.321982
[info] pair 1 (LA, LMHE): model = 0.331216, experimental = 0.341333
[info] overall scale factor = 1.00473
[info] Measurement 'ulna_l'
[info] pair 0 (LMHE, LUS): model = 0.253226, experimental = 0.291053
[info] overall scale factor = 1.14938
[info] Measurement 'radius_l'
[info] pair 0 (LLHE, LRS): model = 0.254918, experimental = 0.271812
[info] overall scale factor = 1.06627
[info] Measurement 'lunate_l'
[info] pair 0 (LRS, LUS): model = 0.0692475, experimental = 0.0768925
[info] overall scale factor = 1.11040
[info] Measurement 'hand_l'
[info] pair 0 (LUS, LRS): model = 0.0692475, experimental = 0.0768925
[info] pair 1 (LHMH2, LHMH5): model = 0.0833136, experimental = 0.0956044
[info] pair 2 (LUS, LHMH5): model = 0.0757493, experimental = 0.0963641
[info] pair 3 (LRS, LHMH2): model = 0.0948001, experimental = 0.107458
[info] overall scale factor = 1.1659
[info] Measurement 'finger_r'
[info] pair 0 (RHMH2, RFT3): model = 0.0855351, experimental = 0.110241
[info] pair 1 (RHMH5, RFT3): model = 0.0959083, experimental = 0.118706
[info] overall scale factor = 1.26327
[info] Measurement 'finger_l'
[info] pair 0 (LHMH2, LFT3): model = 0.0855351, experimental = 0.100809
[info] pair 1 (LHMH5, LFT3): model = 0.0959083, experimental = 0.115544
[info] overall scale factor = 1.19165
[info] Wrote model file '../../examples/results/AOT_01/models/wholebody_AOT_01.osim' from model.
[info] Step 3: Placing markers on model
[info] Loaded marker file ../models/OpenSim_models/../../data/AOT_01/AOT_01_ManipStim_static.trc (49 markers, 531 frames)
[info] Averaged frames from time 0.0 to 5.3 in ../models/OpenSim_models/../../data/AOT_01/AOT_01_ManipStim_static.trc (frames 1 to 531)
[info] Deleted 0 unused markers from model AOT_scaled.
[info] Frame at (t = 0.0): total squared error = 0.0552466, marker error: RMS = 0.033578, max = 0.0639436 (LGT)
[info] Moved markers in model AOT_scaled to match locations in marker file '../models/OpenSim_models/../../data/AOT_01/AOT_01_ManipStim_static.trc'.
Traceback (most recent call last):
File "/home/charbie/Documents/Programmation/GaitAnalyzer/examples/example_optimal_estimation.py", line 40, in <module>
AnalysisPerformer(
File "/home/charbie/Documents/Programmation/GaitAnalyzer/gait_analyzer/analysis_performer.py", line 59, in __init__
self.run_analysis()
File "/home/charbie/Documents/Programmation/GaitAnalyzer/gait_analyzer/analysis_performer.py", line 197, in run_analysis
results = self.analysis_to_perform(subject_name, subject_mass, static_trial_full_file_path, c3d_file_name, result_folder)
File "/home/charbie/Documents/Programmation/GaitAnalyzer/examples/example_optimal_estimation.py", line 17, in analysis_to_perform
results.create_model(osim_model_type=OsimModels.WholeBody(), skip_if_existing=False)
File "/home/charbie/Documents/Programmation/GaitAnalyzer/gait_analyzer/result_manager.py", line 65, in create_model
self.model_creator = ModelCreator(subject_name=self.subject_name,
File "/home/charbie/Documents/Programmation/GaitAnalyzer/gait_analyzer/model_creator.py", line 173, in __init__
self.scale_opensim_model()
File "/home/charbie/Documents/Programmation/GaitAnalyzer/gait_analyzer/model_creator.py", line 256, in scale_opensim_model
tool.run()
File "/home/charbie/miniconda3/envs/dev_gait/lib/python3.10/site-packages/opensim/tools.py", line 2129, in run
return _tools.ScaleTool_run(self)
RuntimeError: std::exception in 'bool OpenSim::ScaleTool::run() const': SimTK Exception thrown at Xml.cpp:113:
Error detected by Simbody method Xml::writeToFile(): Failed to write to the Xml file '../models/OpenSim_models/../../examples/results/AOT_01/models/wholebody_AOT_01.osim' with error ' (line=1, col=1)'.
(Required condition 'saveOK' was not met.)
Ubuntu 22.04
Python 3.10.16
OpenSim 4.5.1
The text was updated successfully, but these errors were encountered:
No I am pretty sure it is a path problem since when I put all files (original_model.osim, static.trc, output_scaled_model.osim, output_scaled.xml) in the current directory it works without any problem :)
Moreover, I had to hack my way into accessing the right paths in the xml in the first place:
# Modify the original xml with the participants information
tree = ET.parse(self.osim_model_type.xml_setup_file)
root = tree.getroot()
for elem in root.iter():
if elem.tag == "model_file":
elem.text = os.path.abspath(self.osim_model_type.original_osim_model_full_path)
elif elem.tag == "output_model_file":
# Due to OpenSim, this path must be relative to xml
rel_path = os.path.relpath(self.osim_model_full_path, os.path.dirname(self.new_xml_path))
elem.text = rel_path
elif elem.tag == "mass":
elem.text = f"{self.subject_mass}"
elif elem.tag == "marker_file":
# Due to OpenSim, this path must be relative to original_osim_model_full_path
trc_file_relative_path = os.path.relpath(self.trc_file_path,
os.path.abspath(
self.osim_model_type.original_osim_model_full_path))[
3:]
elem.text = trc_file_relative_path
tree.write(self.new_xml_path)
tool = osim.ScaleTool(self.new_xml_path)
tool.run()
I get an error message not informative in the Python API (see bellow).
The scaled wholebody_AOT_01.osim model file was created, but I still get an error message and the model was not scaled (it is a copy of the orginal .osim file).
Could someone help me understand?
Ubuntu 22.04
Python 3.10.16
OpenSim 4.5.1
The text was updated successfully, but these errors were encountered: