ultralytics 8.3.10 Apple iPhone HEIC support (#16853)
Signed-off-by: UltralyticsAssistant <web@ultralytics.com> Co-authored-by: UltralyticsAssistant <web@ultralytics.com>
This commit is contained in:
parent
1e5e612f83
commit
02d5c290e6
6 changed files with 177 additions and 89 deletions
|
|
@ -238,12 +238,14 @@ def check_version(
|
|||
c = parse_version(current) # '1.2.3' -> (1, 2, 3)
|
||||
for r in required.strip(",").split(","):
|
||||
op, version = re.match(r"([^0-9]*)([\d.]+)", r).groups() # split '>=22.04' -> ('>=', '22.04')
|
||||
if not op:
|
||||
op = ">=" # assume >= if no op passed
|
||||
v = parse_version(version) # '1.2.3' -> (1, 2, 3)
|
||||
if op == "==" and c != v:
|
||||
result = False
|
||||
elif op == "!=" and c == v:
|
||||
result = False
|
||||
elif op in {">=", ""} and not (c >= v): # if no constraint passed assume '>=required'
|
||||
elif op == ">=" and not (c >= v):
|
||||
result = False
|
||||
elif op == "<=" and not (c <= v):
|
||||
result = False
|
||||
|
|
@ -333,18 +335,19 @@ def check_font(font="Arial.ttf"):
|
|||
return file
|
||||
|
||||
|
||||
def check_python(minimum: str = "3.8.0", hard: bool = True) -> bool:
|
||||
def check_python(minimum: str = "3.8.0", hard: bool = True, verbose: bool = True) -> bool:
|
||||
"""
|
||||
Check current python version against the required minimum version.
|
||||
|
||||
Args:
|
||||
minimum (str): Required minimum version of python.
|
||||
hard (bool, optional): If True, raise an AssertionError if the requirement is not met.
|
||||
verbose (bool, optional): If True, print warning message if requirement is not met.
|
||||
|
||||
Returns:
|
||||
(bool): Whether the installed Python version meets the minimum constraints.
|
||||
"""
|
||||
return check_version(PYTHON_VERSION, minimum, name="Python", hard=hard)
|
||||
return check_version(PYTHON_VERSION, minimum, name="Python", hard=hard, verbose=verbose)
|
||||
|
||||
|
||||
@TryExcept()
|
||||
|
|
@ -374,8 +377,6 @@ def check_requirements(requirements=ROOT.parent / "requirements.txt", exclude=()
|
|||
```
|
||||
"""
|
||||
prefix = colorstr("red", "bold", "requirements:")
|
||||
check_python() # check python version
|
||||
check_torchvision() # check torch-torchvision compatibility
|
||||
if isinstance(requirements, Path): # requirements.txt file
|
||||
file = requirements.resolve()
|
||||
assert file.exists(), f"{prefix} {file} not found, check failed."
|
||||
|
|
@ -770,6 +771,8 @@ def cuda_is_available() -> bool:
|
|||
return cuda_device_count() > 0
|
||||
|
||||
|
||||
# Define constants
|
||||
# Run checks and define constants
|
||||
check_python("3.8", hard=False, verbose=True) # check python version
|
||||
check_torchvision() # check torch-torchvision compatibility
|
||||
IS_PYTHON_MINIMUM_3_10 = check_python("3.10", hard=False)
|
||||
IS_PYTHON_3_12 = PYTHON_VERSION.startswith("3.12")
|
||||
|
|
|
|||
Loading…
Add table
Add a link
Reference in a new issue