Tài liệu tham khảo cho ultralytics/utils/downloads.py
Ghi
Tệp này có sẵn tại https://github.com/ultralytics/ultralytics/blob/main/ultralytics/utils/downloads.py. Nếu bạn phát hiện ra một vấn đề, vui lòng giúp khắc phục nó bằng cách đóng góp Yêu cầu 🛠️ kéo. Cảm ơn bạn 🙏 !
ultralytics.utils.downloads.is_url(url, check=False)
Xác thực xem chuỗi đã cho có phải là URL hay không và tùy chọn kiểm tra xem URL có tồn tại trực tuyến hay không.
Thông số:
Tên | Kiểu | Sự miêu tả | Mặc định |
---|---|---|---|
url |
str
|
Chuỗi được xác thực là URL. |
bắt buộc |
check |
bool
|
Nếu True, hãy thực hiện kiểm tra bổ sung để xem URL có tồn tại trực tuyến hay không. Mặc định là True. |
False
|
Trở lại:
Kiểu | Sự miêu tả |
---|---|
bool
|
Trả về True cho một URL hợp lệ. Nếu 'check' là True, cũng trả về True nếu URL tồn tại trực tuyến. Trả về False nếu không. |
Mã nguồn trong ultralytics/utils/downloads.py
ultralytics.utils.downloads.delete_dsstore(path, files_to_delete=('.DS_Store', '__MACOSX'))
Xóa tất cả các tệp ".DS_store" trong một thư mục được chỉ định.
Thông số:
Tên | Kiểu | Sự miêu tả | Mặc định |
---|---|---|---|
path |
str
|
Đường dẫn thư mục nơi các tệp ".DS_store" sẽ bị xóa. |
bắt buộc |
files_to_delete |
tuple
|
Các tập tin sẽ bị xóa. |
('.DS_Store', '__MACOSX')
|
Ghi
Các tệp ".DS_store" được tạo bởi hệ điều hành Apple và chứa siêu dữ liệu về các thư mục và tệp. Họ là các tệp hệ thống ẩn và có thể gây ra sự cố khi chuyển tệp giữa các hệ điều hành khác nhau.
Mã nguồn trong ultralytics/utils/downloads.py
ultralytics.utils.downloads.zip_directory(directory, compress=True, exclude=('.DS_Store', '__MACOSX'), progress=True)
Nén nội dung của một thư mục, không bao gồm các tệp chứa chuỗi trong danh sách loại trừ. Tệp zip kết quả là được đặt tên theo thư mục và được đặt bên cạnh nó.
Thông số:
Tên | Kiểu | Sự miêu tả | Mặc định |
---|---|---|---|
directory |
str | Path
|
Đường dẫn đến thư mục sẽ được nén. |
bắt buộc |
compress |
bool
|
Có nên nén các tệp trong khi nén hay không. Mặc định là True. |
True
|
exclude |
tuple
|
Một bộ chuỗi tên tệp sẽ được loại trừ. Mặc định là ('.DS_Store', '__MACOSX'). |
('.DS_Store', '__MACOSX')
|
progress |
bool
|
Có hiển thị thanh tiến trình hay không. Mặc định là True. |
True
|
Trở lại:
Kiểu | Sự miêu tả |
---|---|
Path
|
Đường dẫn đến tệp zip kết quả. |
Mã nguồn trong ultralytics/utils/downloads.py
ultralytics.utils.downloads.unzip_file(file, path=None, exclude=('.DS_Store', '__MACOSX'), exist_ok=False, progress=True)
Giải nén tệp *.zip vào đường dẫn được chỉ định, không bao gồm các tệp chứa chuỗi trong danh sách loại trừ.
Nếu zipfile không chứa một thư mục cấp cao nhất, hàm sẽ tạo một thư mục mới thư mục có cùng tên với tệp zip (không có phần mở rộng) để trích xuất nội dung của nó. Nếu một đường dẫn không được cung cấp, hàm sẽ sử dụng thư mục mẹ của tệp zip làm đường dẫn mặc định.
Thông số:
Tên | Kiểu | Sự miêu tả | Mặc định |
---|---|---|---|
file |
str
|
Đường dẫn đến zipfile sẽ được giải nén. |
bắt buộc |
path |
str
|
Đường dẫn để giải nén zipfile đến. Mặc định là Không có. |
None
|
exclude |
tuple
|
Một bộ chuỗi tên tệp sẽ được loại trừ. Mặc định là ('.DS_Store', '__MACOSX'). |
('.DS_Store', '__MACOSX')
|
exist_ok |
bool
|
Có ghi đè lên nội dung hiện có nếu chúng tồn tại hay không. Mặc định là False. |
False
|
progress |
bool
|
Có hiển thị thanh tiến trình hay không. Mặc định là True. |
True
|
Tăng:
Kiểu | Sự miêu tả |
---|---|
BadZipFile
|
Nếu tệp được cung cấp không tồn tại hoặc không phải là tệp zip hợp lệ. |
Trở lại:
Kiểu | Sự miêu tả |
---|---|
Path
|
Đường dẫn đến thư mục nơi zipfile được trích xuất. |
Mã nguồn trong ultralytics/utils/downloads.py
ultralytics.utils.downloads.check_disk_space(url='https://ultralytics.com/assets/coco128.zip', path=Path.cwd(), sf=1.5, hard=True)
Kiểm tra xem có đủ dung lượng đĩa để tải xuống và lưu trữ tệp không.
Thông số:
Tên | Kiểu | Sự miêu tả | Mặc định |
---|---|---|---|
url |
str
|
URL đến tệp. Mặc định là 'https://ultralytics.com/tài sản/coco128.zip'. |
'https://ultralytics.com/assets/coco128.zip'
|
path |
str | Path
|
Đường dẫn hoặc ổ đĩa để kiểm tra dung lượng trống có sẵn trên. |
cwd()
|
sf |
float
|
Hệ số an toàn, hệ số nhân cho không gian trống cần thiết. Mặc định là 2.0. |
1.5
|
hard |
bool
|
Có nên ném lỗi hay không khi không đủ dung lượng đĩa. Mặc định là True. |
True
|
Trở lại:
Kiểu | Sự miêu tả |
---|---|
bool
|
True nếu có đủ dung lượng đĩa, False nếu không. |
Mã nguồn trong ultralytics/utils/downloads.py
ultralytics.utils.downloads.get_google_drive_file_info(link)
Truy xuất liên kết tải xuống trực tiếp và tên tệp cho liên kết tệp Google Drive có thể chia sẻ.
Thông số:
Tên | Kiểu | Sự miêu tả | Mặc định |
---|---|---|---|
link |
str
|
Liên kết có thể chia sẻ của tệp Google Drive. |
bắt buộc |
Trở lại:
Kiểu | Sự miêu tả |
---|---|
str
|
URL tải xuống trực tiếp cho tệp Google Drive. |
str
|
Tên tệp gốc của tệp Google Drive. Nếu trích xuất tên tệp không thành công, trả về Không có. |
Ví dụ
Mã nguồn trong ultralytics/utils/downloads.py
ultralytics.utils.downloads.safe_download(url, file=None, dir=None, unzip=True, delete=False, curl=False, retry=3, min_bytes=1.0, exist_ok=False, progress=True)
Tải xuống tệp từ URL, với các tùy chọn để thử lại, giải nén và xóa tệp đã tải xuống.
Thông số:
Tên | Kiểu | Sự miêu tả | Mặc định |
---|---|---|---|
url |
str
|
URL của tệp sẽ được tải xuống. |
bắt buộc |
file |
str
|
Tên tệp của tệp đã tải xuống. Nếu không được cung cấp, tệp sẽ được lưu với cùng tên với URL. |
None
|
dir |
str
|
Thư mục để lưu tệp đã tải xuống. Nếu không được cung cấp, tệp sẽ được lưu trong thư mục làm việc hiện tại. |
None
|
unzip |
bool
|
Có giải nén tệp đã tải xuống hay không. Mặc định: True. |
True
|
delete |
bool
|
Có xóa tệp đã tải xuống sau khi giải nén hay không. Mặc định: False. |
False
|
curl |
bool
|
Có nên sử dụng công cụ dòng lệnh curl để tải xuống hay không. Mặc định: False. |
False
|
retry |
int
|
Số lần thử tải xuống lại trong trường hợp không thành công. Mặc định: 3. |
3
|
min_bytes |
float
|
Số byte tối thiểu mà tệp đã tải xuống phải có, được xem xét Tải xuống thành công. Mặc định: 1E0. |
1.0
|
exist_ok |
bool
|
Có ghi đè lên nội dung hiện có trong quá trình giải nén hay không. Mặc định là False. |
False
|
progress |
bool
|
Có hiển thị thanh tiến trình trong quá trình tải xuống hay không. Mặc định: True. |
True
|
Ví dụ
Mã nguồn trong ultralytics/utils/downloads.py
274 275 276 277 278 279 280 281 282 283 284 285 286 287 288 289 290 291 292 293 294 295 296 297 298 299 300 301 302 303 304 305 306 307 308 309 310 311 312 313 314 315 316 317 318 319 320 321 322 323 324 325 326 327 328 329 330 331 332 333 334 335 336 337 338 339 340 341 342 343 344 345 346 347 348 349 350 351 352 353 354 355 356 357 358 359 360 361 362 363 364 365 366 367 368 369 370 |
|
ultralytics.utils.downloads.get_github_assets(repo='ultralytics/assets', version='latest', retry=False)
Truy xuất thẻ và tài sản của phiên bản được chỉ định từ kho lưu trữ GitHub. Nếu phiên bản không được chỉ định, hàm tìm nạp các tài sản phát hành mới nhất.
Thông số:
Tên | Kiểu | Sự miêu tả | Mặc định |
---|---|---|---|
repo |
str
|
Kho lưu trữ GitHub ở định dạng 'chủ sở hữu / repo'. Mặc định là 'ultralytics/tài sản'. |
'ultralytics/assets'
|
version |
str
|
Phiên bản phát hành để tìm nạp tài sản từ. Mặc định là 'mới nhất'. |
'latest'
|
retry |
bool
|
Gắn cờ để thử lại yêu cầu trong trường hợp không thành công. Mặc định là False. |
False
|
Trở lại:
Kiểu | Sự miêu tả |
---|---|
tuple
|
Bộ dữ liệu chứa thẻ phát hành và danh sách tên nội dung. |
Mã nguồn trong ultralytics/utils/downloads.py
ultralytics.utils.downloads.attempt_download_asset(file, repo='ultralytics/assets', release='v8.2.0', **kwargs)
Cố gắng tải xuống tệp từ nội dung phát hành GitHub nếu không tìm thấy tệp đó cục bộ. Chức năng kiểm tra tệp trước tiên, sau đó cố gắng tải xuống từ bản phát hành kho lưu trữ GitHub được chỉ định.
Thông số:
Tên | Kiểu | Sự miêu tả | Mặc định |
---|---|---|---|
file |
str | Path
|
Tên tệp hoặc đường dẫn tệp sẽ được tải xuống. |
bắt buộc |
repo |
str
|
Kho lưu trữ GitHub ở định dạng 'chủ sở hữu / repo'. Mặc định là 'ultralytics/tài sản'. |
'ultralytics/assets'
|
release |
str
|
Phiên bản phát hành cụ thể sẽ được tải xuống. Mặc định là 'v8.2.0'. |
'v8.2.0'
|
**kwargs |
any
|
Đối số từ khóa bổ sung cho quá trình tải xuống. |
{}
|
Trở lại:
Kiểu | Sự miêu tả |
---|---|
str
|
Đường dẫn đến tệp đã tải xuống. |
Mã nguồn trong ultralytics/utils/downloads.py
ultralytics.utils.downloads.download(url, dir=Path.cwd(), unzip=True, delete=False, curl=False, threads=1, retry=3, exist_ok=False)
Tải xuống các tệp từ các URL được chỉ định vào một thư mục nhất định. Hỗ trợ tải xuống đồng thời nếu nhiều luồng Quy định.
Thông số:
Tên | Kiểu | Sự miêu tả | Mặc định |
---|---|---|---|
url |
str | list
|
URL hoặc danh sách URL của các tệp sẽ được tải xuống. |
bắt buộc |
dir |
Path
|
Thư mục nơi các tệp sẽ được lưu. Mặc định là thư mục làm việc hiện tại. |
cwd()
|
unzip |
bool
|
Gắn cờ để giải nén các tệp sau khi tải xuống. Mặc định là True. |
True
|
delete |
bool
|
Gắn cờ để xóa các tệp zip sau khi giải nén. Mặc định là False. |
False
|
curl |
bool
|
Gắn cờ để sử dụng curl để tải xuống. Mặc định là False. |
False
|
threads |
int
|
Số lượng luồng để sử dụng để tải xuống đồng thời. Mặc định là 1. |
1
|
retry |
int
|
Số lần thử lại trong trường hợp tải xuống không thành công. Mặc định là 3. |
3
|
exist_ok |
bool
|
Có ghi đè lên nội dung hiện có trong quá trình giải nén hay không. Mặc định là False. |
False
|