> 백엔드 개발 > 파이썬 튜토리얼 > 생산적인 오류 처리기

생산적인 오류 처리기

Patricia Arquette
풀어 주다: 2024-11-25 00:41:14
원래의
129명이 탐색했습니다.

Productive error handler

분류 작업은 라이브러리가 거의 필요하지 않기 때문에 AI에서 가장 일반적입니다. 나는 작업의 복잡성을 이해하지 못한 채 온라인 컴파일러의 리소스를 사용하여 글을 쓰려고 노력합니다.

def rle_decode(mask_rle, shape=(1280, 1918, 1)):
    '''
    mask_rle: run-length as string formated (start length)
    shape: (height,width) of array to return 
    Returns numpy array, 1 - mask, 0 - background
    '''
    img = np.zeros(shape[0]*shape[1], dtype=np.uint8)

    s = mask_rle.split()
    starts, lengths = [np.asarray(x, dtype=int) for x in (s[0:][::2], s[1:][::2])]
    starts -= 1
    ends = starts + lengths    
    for lo, hi in zip(starts, ends):
        img[lo:hi] = 1

    img = img.reshape(shape)
    return img
로그인 후 복사

예를 들어 마스크 0/1 디코딩 기능을 사용하면 마스크 길이를 신뢰할 수 있습니다. 그러나 신경망의 배치 패킷을 생성하려면 여전히 현재 결과를 모니터링해야 합니다.

def keras_generator(gen_df, batch_size):
    while True:
        x_batch = []
        y_batch = []

        for i in range(batch_size):
            img_name, mask_rle = gen_df.sample(1).values[0] 
            img = cv2.imread('data/train/{}'.format(img_name))
            mask = rle_decode(mask_rle)

            img = cv2.resize(img, (256, 256)) 
            mask = cv2.resize(mask, (256, 256))

            x_batch += [img] 
            y_batch += [mask]

        x_batch = np.array(x_batch) / 255. 
        y_batch = np.array(y_batch)

        yield x_batch, np.expand_dims(y_batch, -1)
로그인 후 복사
  1. 코드와 눈이 마주칠 수 있도록 결과의 중간 출력을 넣는 것을 좋아합니다
  2. 결과가 만족스럽지 않은 것 같으면 이전 기능을 수정합니다.
im_id = 5
fig, axes = plt.subplots(nrows=1, ncols=2, figsize=(25, 25))
axes[0].imshow(x[im_id]) 
axes[1].imshow(pred[im_id, ..., 0] > 0.5) 

plt.show()
로그인 후 복사

결과 출력 = 작성된 코드와의 접촉이 보장됩니다. 이 경우 예외처리는 필요하지 않습니다.

위 내용은 생산적인 오류 처리기의 상세 내용입니다. 자세한 내용은 PHP 중국어 웹사이트의 기타 관련 기사를 참조하세요!

원천:dev.to
본 웹사이트의 성명
본 글의 내용은 네티즌들의 자발적인 기여로 작성되었으며, 저작권은 원저작자에게 있습니다. 본 사이트는 이에 상응하는 법적 책임을 지지 않습니다. 표절이나 침해가 의심되는 콘텐츠를 발견한 경우 admin@php.cn으로 문의하세요.
저자별 최신 기사
인기 튜토리얼
더>
최신 다운로드
더>
웹 효과
웹사이트 소스 코드
웹사이트 자료
프론트엔드 템플릿