सामग्री पर जाएं

के लिए संदर्भ ultralytics/utils/patches.py

नोट

यह फ़ाइल यहाँ उपलब्ध है https://github.com/ultralytics/ultralytics/बूँद/मुख्य/ultralytics/utils/patches.py का उपयोग करें। यदि आप कोई समस्या देखते हैं तो कृपया पुल अनुरोध का योगदान करके इसे ठीक करने में मदद करें 🛠️। 🙏 धन्यवाद !



ultralytics.utils.patches.imread(filename, flags=cv2.IMREAD_COLOR)

फ़ाइल से एक छवि पढ़ें।

पैरामीटर:

नाम प्रकार विवरण: __________ चूक
filename str

पढ़ने के लिए फ़ाइल का पथ।

आवश्यक
flags int

ध्वज जो cv2 के मान ले सकता है. IMREAD_*. cv2 के लिए डिफ़ॉल्ट। IMREAD_COLOR।

IMREAD_COLOR

देता:

प्रकार विवरण: __________
ndarray

पढ़ी गई छवि।

में स्रोत कोड ultralytics/utils/patches.py
15 बांग्लादेश 16 1718 1920212223242526
def imread(filename: str, flags: int = cv2.IMREAD_COLOR):
    """
    Read an image from a file.

    Args:
        filename (str): Path to the file to read.
        flags (int, optional): Flag that can take values of cv2.IMREAD_*. Defaults to cv2.IMREAD_COLOR.

    Returns:
        (np.ndarray): The read image.
    """
    return cv2.imdecode(np.fromfile(filename, np.uint8), flags)



ultralytics.utils.patches.imwrite(filename, img, params=None)

एक फ़ाइल में एक छवि लिखें।

पैरामीटर:

नाम प्रकार विवरण: __________ चूक
filename str

लिखने के लिए फ़ाइल का पथ।

आवश्यक
img ndarray

लिखने के लिए छवि।

आवश्यक
params list of ints

अतिरिक्त पैरामीटर। ओपनसीवी दस्तावेज़ देखें।

None

देता:

प्रकार विवरण: __________
bool

यदि फ़ाइल लिखी गई थी तो सत्य, अन्यथा असत्य।

में स्रोत कोड ultralytics/utils/patches.py
29 बांग्लादेश 29 बांग्लादेश बांग्लादेश 29 बांग्लादेश बांग्लादेश 29 बांग्लादेश बांग्लादेश 29 बांग्लादेश बांग्लादेश में 29 बांग्लादेश 30 31 32 33 34 35 37 383940 4142 434445
def imwrite(filename: str, img: np.ndarray, params=None):
    """
    Write an image to a file.

    Args:
        filename (str): Path to the file to write.
        img (np.ndarray): Image to write.
        params (list of ints, optional): Additional parameters. See OpenCV documentation.

    Returns:
        (bool): True if the file was written, False otherwise.
    """
    try:
        cv2.imencode(Path(filename).suffix, img, params)[1].tofile(filename)
        return True
    except Exception:
        return False



ultralytics.utils.patches.imshow(winname, mat)

निर्दिष्ट विंडो में एक छवि प्रदर्शित करता है।

पैरामीटर:

नाम प्रकार विवरण: __________ चूक
winname str

विंडो का नाम.

आवश्यक
mat ndarray

छवि दिखाई जानी है।

आवश्यक
में स्रोत कोड ultralytics/utils/patches.py
def imshow(winname: str, mat: np.ndarray):
    """
    Displays an image in the specified window.

    Args:
        winname (str): Name of the window.
        mat (np.ndarray): Image to be shown.
    """
    _imshow(winname.encode("unicode_escape").decode(), mat)



ultralytics.utils.patches.torch_save(*args, **kwargs)

लैम्ब्डा कार्यों को क्रमबद्ध करने के लिए डिल (यदि मौजूद है) का उपयोग करें जहां अचार ऐसा नहीं करता है। इसके साथ 3 पुनः प्रयास जोड़ता है क्षणिक मुद्दों की मजबूती में सुधार करने में विफलता को बचाने के मामले में घातीय गतिरोध।

पैरामीटर:

नाम प्रकार विवरण: __________ चूक
*args tuple

पास करने के लिए स्थितीय तर्क torch।रक्षा कर।

()
**kwargs dict

पास करने के लिए कीवर्ड तर्क torch।रक्षा कर।

{}
में स्रोत कोड ultralytics/utils/patches.py
63 64 65 66 67 68 69 70 71 72 73 74 75 76 777879 80 81 828384 8586
def torch_save(*args, **kwargs):
    """
    Use dill (if exists) to serialize the lambda functions where pickle does not do this. Also adds 3 retries with
    exponential standoff in case of save failure to improve robustness to transient issues.

    Args:
        *args (tuple): Positional arguments to pass to torch.save.
        **kwargs (dict): Keyword arguments to pass to torch.save.
    """
    try:
        import dill as pickle  # noqa
    except ImportError:
        import pickle

    if "pickle_module" not in kwargs:
        kwargs["pickle_module"] = pickle  # noqa

    for i in range(4):  # 3 retries
        try:
            return _torch_save(*args, **kwargs)
        except RuntimeError:  # unable to save, possibly waiting for device to flush or anti-virus to finish scanning
            if i == 3:
                raise
            time.sleep((2**i) / 2)  # exponential standoff 0.5s, 1.0s, 2.0s





2023-11-12 बनाया गया, अपडेट किया गया 2023-11-25
लेखक: ग्लेन-जोचर (3), लाफिंग-क्यू (1)