'scikit-image'에 해당되는 글 1건

  1. 2025.07.09 정규화 절단 알고리즘으로 영역 분할하기(프로그램 4-6) 3
반응형

한빛 아카데미 오일석지음 "컴퓨터 비전과 딥러닝"을 공부하는 중에 예제 코드 프로그램 4-6을 수행하는데 에러가 발생하였다.

원인은 scikit-image 라이브러리 버전이 0.20 이상에서 변경된 사항이 있어서 그런 것이었다.

현재 사용하고 있는 버전은 $ pip show scikit-image를 입력하였더니 0.25.2 였다.

예제 코드를 다음과 같이 수정하였더니 잘 동작을 하였다.

import skimage
import numpy as np
import cv2 as cv
import time

# 변경된 graph 모듈 import
from skimage import graph

coffee = skimage.data.coffee()

start = time.time()
slic = skimage.segmentation.slic(coffee, compactness=20, n_segments=600, start_label=1)

# graph 모듈 변경 적용
g = graph.rag_mean_color(coffee, slic, mode='similarity')
ncut = graph.cut_normalized(slic, g)  # 정규화 절단

print(coffee.shape, ' Coffee 영상을 분할하는데 ', time.time() - start, '초 소요')

marking = skimage.segmentation.mark_boundaries(coffee, ncut)
ncut_coffee = np.uint8(marking * 255.0)

cv.imshow('Normalized cut', cv.cvtColor(ncut_coffee, cv.COLOR_RGB2BGR))
cv.waitKey()
cv.destroyAllWindows()

변경된 부분은 다음과 같다.

from skimage import graph // 추가

g = graph.rag_mean_color(coffee, slic, mode='similarity')

nout = graph.cut_normalized(slic, g)

부분으로 skimage.future.graph가 skimg.graph로 변경됨으로 인한 것이다.

반응형
Posted by 세상을 살아가는 사람
,