andreped's picture
Moved chainer imports inside functions [no ci]
6faad95
import gdown
import logging as log
from .unet3d import UNet3D
from .fetch import download
import os
from tensorflow.python.keras.models import load_model
def get_model(output):
url = "https://github.com/andreped/livermask/releases/download/trained-models-v1/model.h5"
if os.path.exists(output):
try:
model = load_model(output, compile=False)
del model
except OSError as e:
print(e)
print("Model failed to load. Trying to delete old model and redownload. This might take a while...")
os.remove(output)
download(url, output)
else:
download(url, output)
def get_vessel_model(output):
url = "https://drive.google.com/uc?id=1-8VNoRmIeiF1uIuWBqmZXz_6dIQFSAxN"
gdown.cached_download(url, output)
def load_vessel_model(path, cpu):
import chainer
unet = UNet3D(num_of_label=2)
chainer.serializers.load_npz(path, unet)
if not cpu:
chainer.cuda.get_device_from_id(0).use()
unet.to_gpu()
xp = unet.xp
return unet, xp
def verboseHandler(verbose):
if verbose:
log.basicConfig(format="%(levelname)s: %(message)s", level=log.DEBUG)
log.info("Verbose output.")
else:
log.basicConfig(format="%(levelname)s: %(message)s")
return log