IVALab Python Libraries
Collection of code for computer vision and robotics with specific API.
Functions | Variables
cosolve_report Namespace Reference

This module focuses on analyzing the cosolve data collected to generate a report. More...

Functions

def analyze_human_effort (file_path, mask)
 
def analyze_human_tending (file_path)
 
def analyze_progress (file_path)
 
def analyze_robot_effort (file_path, mask, progress_start_time=None, output_figure_path="robot_effort_over_time.png")
 
def classify_action (row, mask)
 
def compute_duration (row)
 
def generate_plots (solve_effort, progress, output_figure_path, mask)
 
def getCameraExtrinsics ()
 
def label_at_pixel (x_coord, y_coord, mask)
 
def main (args)
 
def normalize_timestamp (timestamp, reference_time)
 
def parse_arguments ()
 
def robot_estimate (perf_model_file, effort_file, mask)
 

Variables

def arguments = parse_arguments()
 
 home = str(Path.home())
 
 manCfg = ROSConfig()
 
 manipulation_cfg_file = os.path.join(mary_autonomy, "config", "manipulation.yaml")
 
 mary_autonomy = rpkg.get_path("mary_autonomy")
 
 maryCalPath = rpkg.get_path("mary_calibrate")
 
string PERF_MODEL = home + "/visman/mary_ws/src/Mary_ROS/ros/analysis/performance.yaml"
 
string PROGRESS = home + "visman/Research_Data/Nihit_trial/Direct_Place_Tending/trial_1/progress_20260505_140920.csv"
 
 rpkg = rospkg.RosPack()
 
int SOLUTION_LABEL = 5
 
string SOLVE_EFFORT = home + "/visman/mary_ws/src/Mary_ROS/ros/analysis/trial_1/solve_effort_20260505_140920.csv"
 
string TEND = home + "/visman/Research_Data/Nihit_trial/Direct_Place_Tending/trial_1/tending_times_20260505_140920.csv"
 
int UNORGANIZED_LABEL = 6
 
 zoneDet = regact.imageRegions.load(zoneFile)
 
 zoneFile = os.path.join(maryCalPath, "config", manCfg.perception.sort)
 
list ZONES = [i for i in range(1, SOLUTION_LABEL)]
 
 zones_mask = zoneDet.imRegions
 

Detailed Description

This module focuses on analyzing the cosolve data collected to generate a report.

Co-Solve stats : robot activity counts (# sort actions, # place actions, # direct place actions) human activity counts - estimates: # sort actions, # place actions. Human: total time sort, total time place. Human: total tend time Robot: total time sort, total time place, total time direct place. Robot model to estimate time spent picking and placing given number of pieces.

Function Documentation

◆ analyze_human_effort()

def analyze_human_effort (   file_path,
  mask 
)

◆ analyze_human_tending()

def analyze_human_tending (   file_path)

◆ analyze_progress()

def analyze_progress (   file_path)

◆ analyze_robot_effort()

def analyze_robot_effort (   file_path,
  mask,
  progress_start_time = None,
  output_figure_path = "robot_effort_over_time.png" 
)

◆ classify_action()

def classify_action (   row,
  mask 
)

◆ compute_duration()

def compute_duration (   row)

◆ generate_plots()

def generate_plots (   solve_effort,
  progress,
  output_figure_path,
  mask 
)

◆ getCameraExtrinsics()

def getCameraExtrinsics ( )

◆ label_at_pixel()

def label_at_pixel (   x_coord,
  y_coord,
  mask 
)

◆ main()

def main (   args)

◆ normalize_timestamp()

def normalize_timestamp (   timestamp,
  reference_time 
)

◆ parse_arguments()

def parse_arguments ( )

◆ robot_estimate()

def robot_estimate (   perf_model_file,
  effort_file,
  mask 
)

Variable Documentation

◆ arguments

def arguments = parse_arguments()

◆ home

home = str(Path.home())

◆ manCfg

manCfg = ROSConfig()

◆ manipulation_cfg_file

manipulation_cfg_file = os.path.join(mary_autonomy, "config", "manipulation.yaml")

◆ mary_autonomy

mary_autonomy = rpkg.get_path("mary_autonomy")

◆ maryCalPath

maryCalPath = rpkg.get_path("mary_calibrate")

◆ PERF_MODEL

string PERF_MODEL = home + "/visman/mary_ws/src/Mary_ROS/ros/analysis/performance.yaml"

◆ PROGRESS

string PROGRESS = home + "visman/Research_Data/Nihit_trial/Direct_Place_Tending/trial_1/progress_20260505_140920.csv"

◆ rpkg

rpkg = rospkg.RosPack()

◆ SOLUTION_LABEL

int SOLUTION_LABEL = 5

◆ SOLVE_EFFORT

string SOLVE_EFFORT = home + "/visman/mary_ws/src/Mary_ROS/ros/analysis/trial_1/solve_effort_20260505_140920.csv"

◆ TEND

string TEND = home + "/visman/Research_Data/Nihit_trial/Direct_Place_Tending/trial_1/tending_times_20260505_140920.csv"

◆ UNORGANIZED_LABEL

int UNORGANIZED_LABEL = 6

◆ zoneDet

zoneDet = regact.imageRegions.load(zoneFile)

◆ zoneFile

zoneFile = os.path.join(maryCalPath, "config", manCfg.perception.sort)

◆ ZONES

list ZONES = [i for i in range(1, SOLUTION_LABEL)]

◆ zones_mask

zones_mask = zoneDet.imRegions