def start_test(chosen_algorithm, control_method, probability, windows_size, packet_size, model, P01, P10): img = Image.open("test.jpg") receiver = Receiver() sender = Sender(receiver, control_method, windows_size, packet_size) sender.set_ts_interference(probability, model, P01, P10) img_array = np.asarray(img) sender.data_to_binary(img_array) sender.split_array() sender.send_frames(chosen_algorithm) error_counter = 0 ber = 0 for j in range(0, len(receiver.result)): final_pack = receiver.result[j].astype(np.uint8) start_pack = sender.packets[j] for i in range(0, packet_size): if start_pack[i] != final_pack[i]: error_counter += 1 j += 1 ber = error_counter / (len(receiver.result) * packet_size) * 100 final_img = receiver.finalize_img() return receiver.numberOfAcceptedPackets, receiver.numberOfRejectedPackets, ber
print('Enter window size: ') windows_size = int(input()) print('Enter packet size: ') packet_size = int(input()) img = Image.open("test.jpg") scaled_img = img.resize((640, 640)) scaled_img.show() receiver = Receiver() sender = Sender(receiver, control_method, windows_size, packet_size) sender.set_ts_interference(probability, model, P01, P10) img_array = np.asarray(img) sender.data_to_binary(img_array) sender.split_array() print('Starting transmission:') sender.send_frames(chosen_algorithm) receiver.print_statistics() error_counter = 0 ber = 0 for j in range(0, len(receiver.result)): final_pack = receiver.result[j].astype(np.uint8) start_pack = sender.packets[j] for i in range(0, packet_size): if start_pack[i] != final_pack[i]: error_counter += 1 j += 1