Python Forum
How to return values from For Loop via return in a function
Thread Rating:
  • 0 Vote(s) - 0 Average
  • 1
  • 2
  • 3
  • 4
  • 5
How to return values from For Loop via return in a function
#2
To return those values, you have to store them in a list outside of the loop and then return the loop:

def detected_objects_2():
    b_values = []
    for image_path in TEST_IMAGE_PATHS:
        image = Image.open(image_path)
     
        folder_path = "test_images/" #folder path to your images 
     
        File_Lst = []
     
        for file in os.listdir(folder_path):
            File_Lst.append(file)
         
        dog_index = File_Lst.index('image1.jpg')           
        dog_str = File_Lst[dog_index]
     
        img = cv2.imread(folder_path + dog_str )
        cv2.destroyAllWindows()         
        cv2.imshow("Press KEYS to know which direction you want to go with your robot", img)
     
        image_np = load_image_into_numpy_array(image)
        image_np_expanded = np.expand_dims(image_np, axis=0)
        output_dict = run_inference_for_single_image(image_np, detection_graph)
     
        a, b = vis_util.visualize_boxes_and_labels_on_image_array(
          image_np,
          output_dict['detection_boxes'],
          output_dict['detection_classes'],
          output_dict['detection_scores'],
          category_index,
          instance_masks=output_dict.get('detection_masks'),
          use_normalized_coordinates=True,
          line_thickness=8)
        b_values.append(b)
        plt.figure(figsize=IMAGE_SIZE)
        cv2.destroyAllWindows()
        cv2.imshow("Object Detector", image_np)
        #print(b)
        #if b == 'turnLeft':
          #print("Turn Left !!!")
        #elif b == 'turnRight':
          #print("Turn Right !!!")
        #else:
          #print("NO DETECTION !!!")   
         
        k = cv2.waitKey(0)
        if k == ord('a'): # wait for 'a' key to upload traffic signs one by one
            cv2.destroyAllWindows()
            cv2.imshow("Object Detector", image_np)
           
        elif k == ord('s'):
            cv2.waitKey(0)
            cv2.destroyAllWindows()
            break    
    return b_values
Reply


Messages In This Thread
RE: How to return values from For Loop via return in a function - by stullis - Jan-03-2019, 03:04 PM

Possibly Related Threads…
Thread Author Replies Views Last Post
  Regex find string then return 10 character after it pyStund 6 1,712 Aug-04-2022, 11:26 PM
Last Post: Pedroski55
  Matplotlib scatter plot in loop with None values ivan_sc 1 2,345 Nov-04-2021, 11:25 PM
Last Post: jefsummers
  Sympy nonlinsolve does not return explicit solution axelle 1 2,349 Jan-20-2021, 11:38 AM
Last Post: Serafim
  A function to return only certain columns with certain string illmattic 2 2,263 Jul-24-2020, 12:57 PM
Last Post: illmattic
  Match string return different cell string Kristenl2784 0 1,465 Jul-20-2020, 07:54 PM
Last Post: Kristenl2784
  Basic storage of function values for monte carlo simulation glidecode 1 1,816 Apr-15-2020, 01:41 AM
Last Post: jefsummers
  how to get x values based on y-axis values from curvefit function python_newbie09 1 3,370 Sep-19-2019, 02:09 AM
Last Post: scidam
  Comparing Values Resulting from Function Outputs firebird 0 1,869 Jul-25-2019, 05:16 AM
Last Post: firebird
  Return ERROR when installing pyopencl Helcio_Sarabando 1 4,243 Sep-08-2018, 11:23 PM
Last Post: Larz60+
  Converting days to years in loop while computing values across grid cells Lightning1800 2 2,722 May-15-2018, 08:44 PM
Last Post: Lightning1800

Forum Jump:

User Panel Messages

Announcements
Announcement #1 8/1/2020
Announcement #2 8/2/2020
Announcement #3 8/6/2020