더북(TheBook)

이제 마지막으로 예측 결과를 시각적으로 표현하기 위한 함수를 정의합니다.

코드 6-20 테스트 데이터셋 이미지를 출력하기 위한 함수 정의

class_ = classes = {0:'cat', 1:'dog'} ------ 개와 고양이에 대한 클래스 정의
def display_image_grid(images_filepaths, predicted_labels=(), cols=5):
    rows = len(images_filepaths) // cols
    figure, ax = plt.subplots(nrows=rows, ncols=cols, figsize=(12, 6))
    for i, image_filepath in enumerate(images_filepaths):
        image = cv2.imread(image_filepath)
        image = cv2.cvtColor(image, cv2.COLOR_BGR2RGB)
        a = random.choice(res['id'].values) ------ 데이터 프레임의 id라는 칼럼에서 임의로 데이터를 가져옵니다.
        label = res.loc[res['id'] == a, 'label'].values[0]
        if label > 0.5: ------ 레이블 값이 0.5보다 크다면 개
            label = 1
        else: ------ 레이블 값이 0.5보다 작다면 고양이
            label = 0
        ax.ravel()[i].imshow(image)
        ax.ravel()[i].set_title(class_[label])
        ax.ravel()[i].set_axis_off()
    plt.tight_layout()
    plt.show()
신간 소식 구독하기
뉴스레터에 가입하시고 이메일로 신간 소식을 받아 보세요.