mirror of
https://github.com/vladmandic/automatic
synced 2026-09-20 01:31:13 +02:00
update mim installer
This commit is contained in:
@@ -9,6 +9,7 @@ os.environ["KMP_DUPLICATE_LIB_OK"]="TRUE"
|
||||
import cv2
|
||||
import numpy as np
|
||||
from PIL import Image
|
||||
from installer import installed, install, log
|
||||
from modules.control.util import HWC3, resize_image
|
||||
from .draw import draw_bodypose, draw_handpose, draw_facepose
|
||||
checked_ok = False
|
||||
@@ -16,11 +17,17 @@ checked_ok = False
|
||||
|
||||
def check_dependencies():
|
||||
global checked_ok # pylint: disable=global-statement
|
||||
from installer import installed, install, log
|
||||
packages = [('openmim', 'openmim'), ('mmengine', 'mmengine'), ('mmcv', 'mmcv'), ('mmpose', 'mmpose'), ('mmdet', 'mmdet')]
|
||||
packages = [
|
||||
('openmim==0.3.9', 'openmim'),
|
||||
('mmengine==0.10.4', 'mmengine'),
|
||||
('mmcv==2.1.0', 'mmcv'),
|
||||
('mmpose==1.3.1', 'mmpose'),
|
||||
('mmdet==3.3.0', 'mmdet'),
|
||||
]
|
||||
packages = []
|
||||
for pkg in packages:
|
||||
if not installed(pkg[1], reload=True, quiet=True):
|
||||
install(pkg[0], pkg[1], ignore=False)
|
||||
install(pkg[0], pkg[1], ignore=False, no_deps=True)
|
||||
try:
|
||||
import mmcv # pylint: disable=unused-import
|
||||
checked_ok = True
|
||||
@@ -46,6 +53,7 @@ def draw_pose(pose, H, W):
|
||||
|
||||
class DWposeDetector:
|
||||
def __init__(self, det_config=None, det_ckpt=None, pose_config=None, pose_ckpt=None, device="cpu"):
|
||||
self.pose_estimation = None
|
||||
if not checked_ok:
|
||||
if not check_dependencies():
|
||||
return
|
||||
@@ -57,6 +65,8 @@ class DWposeDetector:
|
||||
return self
|
||||
|
||||
def __call__(self, input_image, detect_resolution=512, image_resolution=512, output_type="pil", min_confidence=0.3, **kwargs):
|
||||
if self.pose_estimation is None:
|
||||
log.error("DWPose: not loaded")
|
||||
input_image = cv2.cvtColor(np.array(input_image, dtype=np.uint8), cv2.COLOR_RGB2BGR)
|
||||
|
||||
input_image = HWC3(input_image)
|
||||
|
||||
Reference in New Issue
Block a user