コード例 #1
0
def load_mdl(mdl_dir: str = None, device=torch.device("cpu")):
    if mdl_dir is None:
        mdl_dir = mdl_url_dest()["orient"]["dest"]
    model = OrientMdl()
    model.load_state_dict(torch.load(mdl_dir))
    model.eval()
    return model.to(device)
コード例 #2
0
def get_pose_model(f_pretrained=None, num_layers=50, cfg=None, **kwargs):
    if f_pretrained is None:
        f_pretrained = mdl_url_dest()["pose"]["dest"]
    assert os.path.exists(f_pretrained)

    block_class, layers = resnet_spec[num_layers]
    if cfg is None:
        from .config import update_config
        from .config import config

        f = Path(__file__).parent / "256x192_d256x3_adam_lr1e-3.yaml"
        update_config(str(f))
        cfg = config

    model = PoseResNet(block_class, layers, cfg, **kwargs)
    model.load_state_dict(torch.load(f_pretrained), strict=False)
    return model
コード例 #3
0
ファイル: load_mdl.py プロジェクト: takotab/furry-geras
def load_mdl(model_path=None, label_path=None, device=torch.device("cpu")):
    if model_path is None:
        model_path = mdl_url_dest()["detect_human_ssd"]["dest"]
        assert os.path.exists(model_path), model_path

    if label_path is None:
        from ..utils._classes import label_path

    class_names = [name.strip() for name in open(label_path).readlines()]
    net = create_mobilenetv2_ssd_lite(len(class_names),
                                      is_test=True,
                                      device=device)
    net.load(model_path)

    predictor = create_mobilenetv2_ssd_lite_predictor(net,
                                                      candidate_size=200,
                                                      device=device,
                                                      class_names=class_names)
    return predictor
コード例 #4
0
ファイル: server.py プロジェクト: takotab/furry-geras
from starlette.responses import HTMLResponse, JSONResponse, FileResponse
from starlette.staticfiles import StaticFiles
from starlette.middleware.cors import CORSMiddleware
from starlette.staticfiles import StaticFiles
from starlette.endpoints import HTTPEndpoint
import uvicorn, aiohttp, asyncio
from io import BytesIO
from pathlib import Path
import os
import sys
import motion

from motion.utils import mdl_url_dest

app_path = Path(__file__).parent
url_dest = mdl_url_dest(str(app_path))
app = Starlette()
app.add_middleware(
    CORSMiddleware,
    allow_origins=["*"],
    allow_headers=["X-Requested-With", "Content-Type"],
)
app.mount("/static", StaticFiles(directory="app/static"))


async def download_file(url, dest):
    if dest.exists():
        return
    print("downloading...")
    async with aiohttp.ClientSession() as session:
        async with session.get(url) as response:
コード例 #5
0
def test_utils_dest():
    urls_dest = utils.mdl_url_dest()
    for key in urls_dest:
        assert os.path.exists(urls_dest[key]["dest"]), urls_dest[key]["dest"]