Esempio n. 1
0
def go_sort():
    arr = np.random.randint(1000, size=10).tolist()
    compare_arr = sorted(arr)
    sorter = Sorter()
    assert sorter.sort(arr) == compare_arr
    assert sorter.sort(arr, 'merge') == compare_arr
    assert sorter.sort(arr, 'radix') == compare_arr

    print sorter.sort(arr, args.mode)
Esempio n. 2
0
    def test_stable_sort(self):
        tmp = []
        with open('file.txt', 'w') as file:
            for i in range(11):
                file.write(str(i) + ' 1' + '\n')
                tmp.append(str(i) + ' 1')
        s = Sorter('file.txt', static_column=1)
        s.sort()
        sorted = get_text('file.txt')
        self.assertEqual(sorted, tmp)

        s = Sorter('file.txt', static_column=1, is_reversible=True)
        s.sort()
        sorted = get_text('file.txt')
        tmp.reverse()
        self.assertEqual(sorted, tmp)

        with open('file.txt', 'w') as file:
            for i in range(11):
                file.write(str(10 - i) + ' ' + str(i) + '\n')
        tmp = ['10 0', '9 1', '0 10', '8 2', '7 3', '6 4', '5 5', '4 6', '3 7', '2 8', '1 9']
        s = Sorter('file.txt', static_column=1)
        s.sort()
        sorted = get_text('file.txt')
        self.assertEqual(sorted, tmp)

        s = Sorter('file.txt', static_column=1, is_reversible=True)
        s.sort()
        sorted = get_text('file.txt')
        tmp.reverse()
        self.assertEqual(sorted, tmp)

        os.remove('file.txt')
Esempio n. 3
0
 def do_test(self):
     tmp_dir = tempfile.mkdtemp()
     os.chdir(tmp_dir)
     self.create_random_file("test.txt", 5000, 30)
     sorter = Sorter(input_file_name="test.txt", separators=" ", is_bar_need=False)
     sorter.strings_in_tmp_file = 50
     sorter.sort()
     result_file = open("test.txt", 'r')
     previous_string = result_file.readline().replace("\n", "")
     current_string = result_file.readline().replace("\n", "")
     while current_string != "":
         self.assertEqual(0, sorter.compare_strings(
             [previous_string, current_string]))
         previous_string = current_string
         current_string = result_file.readline().replace("\n", "")
     result_file.close()
Esempio n. 4
0
    def test_multisort(self):
        with open('file.txt', 'w')as file:
            for i in range(11):
                file.write(str(i) + '\n')

        s = Sorter('file.txt')
        s.sort()
        sorted = get_text('file.txt')
        self.assertEqual(sorted, ['0', '1', '10', '2', '3', '4', '5', '6', '7', '8', '9'])

        s = Sorter('file.txt', is_reversible=True)
        s.sort()
        sorted = get_text('file.txt')
        self.assertEqual(sorted, ['9', '8', '7', '6', '5', '4', '3', '2', '10', '1', '0'])

        os.remove('file.txt')
Esempio n. 5
0
    def test_million_strings(self):
        f = None
        try:
            f = open('million.txt', 'r')
        except:
            pass
        if f is not None:
            f.close()
            s = Sorter('million.txt')
            s.sort()
            f = open('million.txt', 'r')
            self.assertEqual(f.read(1), ' ')
            f.close()

            s = Sorter('million.txt',is_reversible=True)
            s.sort()
            f= open('million.txt', 'r')
            self.assertEqual(f.read(1), 'Z')
            f.close()
Esempio n. 6
0
def start(event, context):
    sorter = Sorter()
    times = sorter.sort()

    return {"statusCode": 200, "body": json.dumps(times)}
Esempio n. 7
0
            face2_warped = w.warp(face2, face2_fx, face2_fy, 1 - warp_amount)
            # We alpha blend the original images
            face_out = (
                1 - warp_amount) * face1_warped + warp_amount * face2_warped
            # write video frame
            out.write(face_out.astype(np.uint8))
    # put the last face into the video for duration "pause"
    for i in range(int(pause * fps)):
        out.write(faces[-1])
    out.release()


# a much simpler version of the video maker that doesn't perform the morphing operations
def make_video_nomorph(faces, out_filename, pause=1, fps=30):
    out = cv2.VideoWriter(out_filename, cv2.VideoWriter_fourcc(*'mp4v'), fps,
                          (800, 800))
    for i in range(len(faces)):
        for j in range(int(pause * fps)):
            out.write(faces[i])
    out.release()


if __name__ == "__main__":
    path = "./images/set3/"
    sorter = Sorter(path)
    sorter.sort()
    facelist = sorter.list_all()
    facelist = align_faces(facelist)
    make_video(facelist, "./data/out.mp4")
    make_video_nomorph(facelist, "./data/out_nomorph.mp4")