relinc / SurePulseDataProcessor

Part of the Sure-Pulse software package. This software processes material property data like stress and strain.
GNU General Public License v3.0
2 stars 1 forks source link

Eulerian video Lagrangian output for NCORR #44

Closed bhalonen closed 6 years ago

bhalonen commented 6 years ago

Here is video commentary. https://youtu.be/HAWv_JTs5dA

Also, change the default image to original instead of medium.

Default the data output to Lagrangian, the video to Eulerian.

(The reason it wasn't running was that I wasn't drawing a roi. Lol.)

bhalonen commented 6 years ago

Can you hold off on development for a bit on this? Need to dig into it.

bhalonen commented 6 years ago

Ok, as agreed let's convert to a JSON format. Here is the old format https://gist.github.com/bhalonen/01891ecf9366c0428d163d568718d821

New format. https://gist.github.com/bhalonen/fc6798bd661bbec2824358c361bbbda6

Instead of "Strain mode", let it be "ouput-strain-mode" and "video-strain-mode".

Disable exporting of Eulerian data into SURE-Pulse until we have a system to deal with it.

Set the defaults to Eulerain for video and Lagrangian for output.

bhalonen commented 6 years ago

Updated the link to the new format with an example file.

markhalonen commented 6 years ago

Is it too late to convert to a camelCase naming convention on JSON keys? The dash convention you used here is very non-standard. camelCase is the most popular, followed by underscores.

markhalonen commented 6 years ago

LOL dashes convention is called kebab-case. Love good names.

markhalonen commented 6 years ago

Also, appears to be a typo in JSON schema at output-settings.ouput-strain-mode. output is spelled incorrectly

markhalonen commented 6 years ago

Seems odd to me that units has any business in NCorr. Isn't strain unitless? There are the fields output_settings.units and output_settings.units_per_px in the NCorr job file. output_settings.units_per_px is hard-coded to .01 in SUREPulseImageCorrelation, so I suspect that they are never used.

markhalonen commented 6 years ago

Also, output_settings.fps was hard-coded to 15, I suspect that is not used either.

markhalonen commented 6 years ago

Is dic_settings.scale_factor an Integer or Double type? If it's a double, it's represented as 3.0 in json instead of 3

markhalonen commented 6 years ago

I have pushed the code for migrating to json. Here is an example output, which is using snake_case instead of kebab-case:

{
   "images":[
      "C:\\Users\\mark\\AppData\\Roaming\\RELFX\\DataProc\\Result\\0000.jpg",
      "C:\\Users\\mark\\AppData\\Roaming\\RELFX\\DataProc\\Result\\0001.jpg",
      "C:\\Users\\mark\\AppData\\Roaming\\RELFX\\DataProc\\Result\\0002.jpg",
      "C:\\Users\\mark\\AppData\\Roaming\\RELFX\\DataProc\\Result\\0003.jpg",
      "C:\\Users\\mark\\AppData\\Roaming\\RELFX\\DataProc\\Result\\0004.jpg",
      "C:\\Users\\mark\\AppData\\Roaming\\RELFX\\DataProc\\Result\\0005.jpg",
      "C:\\Users\\mark\\AppData\\Roaming\\RELFX\\DataProc\\Result\\0006.jpg",
      "C:\\Users\\mark\\AppData\\Roaming\\RELFX\\DataProc\\Result\\0007.jpg",
      "C:\\Users\\mark\\AppData\\Roaming\\RELFX\\DataProc\\Result\\0008.jpg",
      "C:\\Users\\mark\\AppData\\Roaming\\RELFX\\DataProc\\Result\\0009.jpg",
      "C:\\Users\\mark\\AppData\\Roaming\\RELFX\\DataProc\\Result\\0010.jpg",
      "C:\\Users\\mark\\AppData\\Roaming\\RELFX\\DataProc\\Result\\0011.jpg",
      "C:\\Users\\mark\\AppData\\Roaming\\RELFX\\DataProc\\Result\\0012.jpg",
      "C:\\Users\\mark\\AppData\\Roaming\\RELFX\\DataProc\\Result\\0013.jpg",
      "C:\\Users\\mark\\AppData\\Roaming\\RELFX\\DataProc\\Result\\0014.jpg",
      "C:\\Users\\mark\\AppData\\Roaming\\RELFX\\DataProc\\Result\\0015.jpg",
      "C:\\Users\\mark\\AppData\\Roaming\\RELFX\\DataProc\\Result\\0016.jpg",
      "C:\\Users\\mark\\AppData\\Roaming\\RELFX\\DataProc\\Result\\0017.jpg",
      "C:\\Users\\mark\\AppData\\Roaming\\RELFX\\DataProc\\Result\\0018.jpg",
      "C:\\Users\\mark\\AppData\\Roaming\\RELFX\\DataProc\\Result\\0019.jpg"
   ],
   "dic_settings":{
      "interpolation":"Cubic Keys Precompute",
      "subregion":"Circle",
      "dic_config":"NO_UPDATE",
      "scaleFactor":"3",
      "threads":"8",
      "radius_sub":"20"
   },
   "version":"2",
   "roi":"C:\\Users\\mark\\AppData\\Roaming\\RELFX\\DataProc\\Result\\roi.png",
   "output_settings":{
      "end_delay":2,
      "strain_min":0,
      "csv_out":"mean e1,mean e2,mean exx,mean eyy,mean exy",
      "subregion":"Circle",
      "fourcc":[
         "M",
         "J",
         "P",
         "G"
      ],
      "font_size":1,
      "fps":30.0,
      "axes":false,
      "units":"inch",
      "units_per_px":0.01,
      "strain_radius":"20",
      "output_strain_mode":"Lagrangian",
      "opencv_color":"COLORMAP_JET",
      "disp_min":0,
      "num_units":-1,
      "strain_max":-1,
      "output":"image",
      "colorbar":true,
      "tick_marks":11,
      "output_dir":"C:\/Users\/mark\/AppData\/Roaming\/RELFX\/DataProc\/Result\/",
      "video_img_out":"e1",
      "scalebar":false,
      "disp_max":2.0
   },
   "results":{
      "strain_input":"",
      "strain_output":"",
      "dic_output":"",
      "dic_input":""
   },
   "sample_name":"Trial Sample"
}